如何实现Sunshine Conversation对话与Zendesk工单映射并指定工单分组?
解决Sunshine Conversation集成Zendesk Support时的工单分组分配问题
给你三个靠谱的解决思路,按需选择:
思路一:元数据+Zendesk触发器自动分配
- 在SC创建对话或发送第一条消息时,把目标分组ID存入SC对话的
metadata字段,比如写{"zendesk_group_id": "12345"} - 先去Zendesk后台创建对应自定义字段(例如命名为
sc_zendesk_group_id),SC对话转工单时会自动将该metadata同步到这个自定义字段中 - 在Zendesk配置触发器:当工单创建且自定义字段
sc_zendesk_group_id有值时,自动将工单分配至对应分组,全程无需额外开发
思路二:SC Webhook监听转工单事件,实时更新分组
- 给SC配置Webhook,监听
conversation:zendesk:created事件——这个事件会在SC对话转为Zendesk工单时触发,返回的payload里同时包含SC对话ID和Zendesk工单ID,直接解决映射问题 - 收到Webhook通知后,提取工单ID和预先存在SC metadata里的分组ID,调用Zendesk的工单更新接口修改分组
- 接口请求体示例:
{ "ticket": { "group_id": 12345 } }
思路三:预存唯一标识,通过Zendesk搜索匹配工单
- 发送第一条消息前,在SC对话的
metadata中存入一个唯一UUID - 消息发送后等待1-2秒(确保工单已生成),调用Zendesk搜索API搜索该UUID:
GET /api/v2/search.json?query=comment:"{UUID}" - 找到对应工单ID后,调用Zendesk API更新分组。建议将UUID隐藏在消息开头(比如
[SC_REF:xxxxxx]),避免影响用户体验
注意事项
- 思路一最省心,无需开发成本,适合无技术团队的场景
- 思路二可靠性最高,通过事件直接获取关联ID,不会出现匹配错误
- 思路三作为备选方案,适合无法使用Webhook的场景,但要注意搜索延迟问题,避免过早搜索导致找不到工单
内容的提问来源于stack exchange,提问作者adgalad
相关产品推荐
相关产品推荐

