标签回调
Shulex → 第三方:回传流程标签(可选)当渠道配置了
tagsUrl 时,Shulex 会在回复成功或需要转人工时回传流程标签。调用时会携带渠道配置的 replyAuthHeader(如有)。
触发场景
请求信息
replyAuthHeader 为渠道配置中的回复鉴权 Header,会同时用于 replyUrl 和 tagsUrl 请求。
请求体
字段说明
tags 的处理语义
tags 是覆盖式回传,不是简单追加。
第三方收到回调后,应将请求体中的 tags 作为该工单最终标签全集保存。
Shulex 生成最终标签的流程如下:
- 通过
queryUrl查询工单当前标签。 - 保留第三方已有的业务标签。
- 根据本次动作移除互斥状态标签。
- 合并本次 AI 状态标签、意图标签和转人工标签。
- 去重后回传最终标签集合。
queryUrl 未配置或查询失败,Shulex 会退化为仅回传本次生成的标签,不会阻断 AI 回复流程。
标签来源
AI 回复成功标签
AI 回复成功后,Shulex 会回写:repliedTags:AI 回复成功标签callbackTags:AI 回复成功后追加的固定标签
AI 意图标签
只有当createIntentTags=true 时,Shulex 才会根据 AI 返回的 intents 生成标签。
处理规则:
- 忽略名称为
other的意图。 - 如果配置了
allowedIntents,只处理白名单中的意图。 - 如果配置了
intentTagMappings,优先使用映射后的标签。 - 没有配置映射时,使用意图名称作为标签,并将空格替换为
_。 - 同一批标签会自动去重。
refund_request 时,回调示例:
转人工标签
当 AI 或过滤规则决定转人工时,Shulex 会回写:handoffTags- 可选的转人工原因标签
addHandoffReasonTag=true 且转人工原因不为空时,才会追加原因标签。
例如:
互斥状态处理
为避免工单同时处于 AI 回复和转人工状态,Shulex 会执行以下清理:
第三方业务标签不会被删除,只会清理上述互斥状态标签。
回调触发条件
以下情况会触发tagsUrl:
- AI 回复成功,并配置了
repliedTags或callbackTags - AI 意图打标成功,并启用了
createIntentTags - AI 或规则判断转人工,并配置了
handoffTags - 本次处理最终存在可回写的标签
tagsUrl:
- 未配置
tagsUrl - 本次没有任何标签
- 标签列表为空
第三方处理建议
第三方系统收到回调后应:- 根据
ticketId定位工单。 - 使用
tags覆盖保存工单最终标签。 - 可使用
baseTicketTag判断当前工单主状态。 - 可使用
intentTags区分本次 AI 生成的意图标签。 - 建议按照
ticketId + messageId实现幂等处理。 - 尽快返回 HTTP
2xx,实际标签更新可以异步执行。
期望响应
第三方成功处理后应尽快返回任意 2xx 状态码。例如:幂等与失败处理
- 建议使用
ticketId + messageId + tags作为幂等依据;未传messageId时可退化为ticketId + tags。 tagsUrl未配置时不会发送标签回调。- 标签回调失败不会撤销已完成的回复或转人工判断;仍建议记录失败并按第三方策略补偿。