ZendeskRecordSink Controller Service
描述
使用 Zendesk API 创建 Zendesk 票证。该服务需要具有已配置访问权限的 Zendesk 帐户。
标签
属性
| 名称 | 默认值 | 可选值 | 描述 |
|---|---|---|---|
| Web Client Service Provider | | 控制器服务 API:WebClientServiceProvidercn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8 | 用于 HTTP 客户端操作的Controller Service。 |
| Subdomain Name | | Zendesk 子域的名称。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| User Name | | 将用户登录到 Zendesk 子域。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Authentication Type | |
| Zendesk API 的身份验证类型。 |
| Authentication Credential | | Zendesk 登录用户的密码或身份验证令牌。 敏感属性:是 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Comment Body | | 传入记录中评论正文的内容或路径。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Subject | | 传入记录中主题的内容或路径。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Priority | | 传入记录中优先级的内容或路径。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Type | | 传入记录中类型的内容或路径。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) | |
| Cache Size | 1000 | 指定应缓存多少 Zendesk 票证。 | |
| Cache Expiration | 1 hour | 指定缓存的 Zendesk 票证应在缓存中保留多长时间。 |
状态管理
该组件不存储状态。
受限 (Restricted)
该组件不受限。
提供的 Service API
RecordSinkService
详细说明
ZendeskRecordSink
说明
该 Sink 使用 Zendesk API 把工单写入 Zendesk,并使用传入记录构建请求对象。
认证
Zendesk API 使用基本认证。必须提供密码或认证令牌之一。在 Zendesk API Settings 中可以生成认证令牌,这样用户无需暴露 密码。这种方式还提供了需要时快速吊销令牌的优势。
属性值
向请求对象提供属性值有多种方式:
Record Path:
如果值提供在以 '%' 开头的方括号内,属性值会作为 record path 求值。
示例:
传入记录如下。
{
"record": {
"description": "This is a sample description.",
"issue\_type": "Immediate",
"issue": {
"name": "General error",
"type": "Immediate"
},
"project": {
"name": "Maintenance"
}
}
}
我们要为 Comment Body、Subject、Priority 和 Type Processor 属性提供 Record Path 值:
Comment Body : %{/record/description}
Subject : %{/record/issue/name}
Priority : %{/record/issue/type}
Type : %{/record/project/name}
将要发送给 Zendesk API 的构建请求对象如下:
{
"comment": {
"body": "This is a sample description."
},
"subject": "General error",
"priority": "Immediate",
"type": "Maintenance"
}
常量:
如果提供的值不符合 Record Path 格式,属性值会被视为常量。
示例:
我们要为 Comment Body、Subject、Priority 和 Type Processor 属性提供常量值:
Comment Body : Sample description
Subject : Sample subject
Priority : High
Type : Sample type
将要发送给 Zendesk API 的构建请求对象如下:
{
"comment": {
"body": "Sample description"
},
"subject": "Sample subject",
"priority": "High",
"type": "Sample type"
}
附加属性
该 Processor 的属性列表中提供了一组常用的 Zendesk 工单属性。不过,用户可以使用动态属性灵活地包含任意数量的 附加属性。这些动态属性的键用作 Json Pointer,表示请求对象内的路径。相应地,这些动态属性的值 与预定义的属性属性对齐。可能的 Zendesk 请求属性参见 Zendesk API 文档。
属性键的值:
动态属性的键必须是有效的 Json Pointer 值,其语法规则如下:
- 路径以 / 开头。
- 每个段由 / 分隔。
- 每个段可以解释为数组索引或对象键。
示例:
我们要给该 Processor 添加新的动态属性:
/request/new_object : This is a new property
/request/new_array/0 : This is a new array element
构建的请求对象如下:
{
"request": {
"new_object": "This is a new property",
"new_array": [
"This is a new array element"
]
}
}
缓存
该 Sink 会缓存内容相同的 Zendesk 工单,以避免重复工单问题。缓存大小和过期时间可以在 sink 服务上设置。