跳到主要内容

用户离线状态回调

功能说明

App 业务服务端可以通过该回调更改用户状态为离线状态。

注意事项

  • 为启用回调,必须配置回调 URL,并开启本条回调协议对应的开关。配置方法详见 回调说明 文档。
  • 回调的方向是 OpenIM Server 向 App 后台发起 HTTP/HTTPS POST 请求。
  • APP 业务服务端需在超时时间内响应此请求。

可能触发该回调的场景

  • 用户通过客户端发起登出的下线请求。
  • 用户的客户端发生断网
  • 用户主动 kill 客户端进程,或者切后台后进程被手机操作系统 kill 掉,或者 crash 导致进程异常退出
  • 客户端心跳超时,如关闭网络,或网络完全不可用

回调发生时机

  • 用户主动下线或被动下线时。

接口说明

请求 URL 示例

此处CallbackCommand为:callbackAfterUserOfflineCommand

{WEBHOOK_ADDRESS}/callbackAfterUserOfflineCommand?contenttype=json

请求包示例

{
"userID": "user123",
"callbackCommand": "callbackAfterUserOfflineCommand",
"platformID": 3,
"platform": "Windows"
}

请求包字段说明

对象类型描述
userIDstring用户的唯一标识符
callbackCommandstring回调命令,这里是用户离线状态回调 callbackAfterUserOfflineCommand
platformIDint64平台号
Platformstring平台名

应答包示例

处理结果

用户下线。

{
"actionCode": 0,
"errCode": 0,
"errMsg": "",
"errDlt": "",
"nextCode": ""
}

应答包字段说明

字段说明
actionCode0表示业务系统的回调是否正确执行。0表示操作成功。
errCode0表示自定义错误码,此处填 0 代表忽略回调结果。
errMsg"An error message"自定义错误码对应的简单错误信息。
errDlt"Detailed error information"自定义错误码对应的详细错误信息。
nextCode1下一步执行指令,1表示拒绝继续执行,actionCode 等于0时设置。