功能说明
客服状态变更回调,当客服成员的在线状态发生变化时(例如上线、下线、小休、示忙等),系统会通过此回调通知开发者后台。
注意:
注意事项
要启用回调,请 联系我们。
回调的方向是智能客服后台向 App 后台发起 HTTP POST 请求。
收到事件通知后应异步处理内部逻辑,同步返回接收成功的应答。
App 后台在收到回调请求之后,务必校验请求 URL 中的参数 SDKAppID 是否是自己的 SDKAppID。
其他安全相关事宜请参见 第三方回调简介:安全考虑 文档。
接口说明
请求 URL 示例
以下示例中 App 配置的回调 URL 为
https://www.example.com。示例:
https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform&RequestID=$RequestID
请求参数说明
参数 | 说明 |
https | 请求协议为 HTTPS,请求方式为 POST。 |
www.example.com | 回调 URL。 |
SdkAppid | 创建应用时在即时通信 IM 控制台分配的 SDKAppID。 |
CallbackCommand | 固定为 Member.EventNotify。 |
contenttype | 固定值为 json。 |
ClientIP | 客户端 IP,格式例如: 127.0.0.1。 |
RequestID | 请求的 RequestID,用于唯一标识回调请求,当发生回调重试时,业务后台可以使用此字段进行去重处理。 |
请求包示例
客服上线。
{"CallbackCommand": "Member.EventNotify","Event": "Member.StatusChange","MemberId": "test@qq.com","Status": "free","EventTime": 1725540020017,"ClientInfo": [{"ClientType": "Web","IsConnected": true}],"RestReason": ""}
请求包字段说明
字段 | 类型 | 说明 |
CallbackCommand | String | 回调命令,固定为 Member.EventNotify。 |
Event | String | 事件类型,固定为 Member.StatusChange。 |
MemberId | String | 客服成员 ID(即客服邮箱账号)。 |
Status | String | 客服当前状态,可能的值为:ready(示闲),notReady(示忙),rest(小休),offline(离线)。 |
EventTime | Integer | 事件触发的毫秒级别时间戳。 |
ClientInfo | Array | 客户端连接的信息列表。 |
ClientInfo.ClientType | String | 客户端类型: Web:PC 网页端。 |
ClientInfo.IsConnected | Boolean | 该客户端是否处于连接状态。 |
RestReason | String | 小休原因,仅当 Status 为 rest 时有效。 |
应答包示例
App 后台同步数据后,发送回调应答包。
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0}
应答包字段说明
字段 | 类型 | 属性 | 说明 |
ActionStatus | String | 必填 | 请求处理的结果,OK 表示处理成功,FAIL 表示失败。 |
ErrorCode | Integer | 必填 | 错误码,此处填0表示忽略应答结果。 |
ErrorInfo | String | 必填 | 错误信息。 |
联系我们
如果您在接入过程中有任何疑问,请用微信或企业微信扫码加入智能客服交流群进行咨询。
