本文档已不再维护,新版文档见:用户在线状态管理 RESTful API。
开发者可以通过该回调实现实时监控用户在线、离线状态,以及状态变更原因(登入,登出,踢用户);如应用中需要实时展示用户在线、离线状态时,可通过此服务来实现。
每个用户的状态类型有以下2种:
状态变更原因包含以下3种:
同步在线状态时需要接收服务提供应答,只要有 HTTP 应答码 200 ,环信服务器会认为状态已经同步;如果应答超时60 秒,会再尝试推送第 2 次,如果仍然失败,环信服务器将不再同步此条状态,同时会记录1次推送失败。如短时间内有大面积超时,将暂停推送。
该回调类型为用户在环信服务器在离线(online/offline)状态变更事件,其中包含变更原因登入,登出,踢用户。 对应login, logout, replaced。
参数 | 参数类型 | 说明 |
---|---|---|
user | String | 环信用户名和设备resource |
reason | String | 用户状态变更原因(login/logout/replaced) |
os | String | 设备类型(android/ios/webim) |
ip | String | IP地址和端口号 |
version | String | sdk 版本号 |
status | String | 当前状态(online/offline) |
注意:callId为{appkey}_{uuid} 其中uuid为随机生成,仅供双向定位使用,无实际意义。
例:
{
"callId": "easemob-demo#test_0770a64f-cf01-4c41-8786-df3b48b20e7e",
"security": "2ca02c394bef9e7abc83958bcc3156d3",
"host": "msync@hsb-didi-guangzhou-msync",
"timestamp": 1600060847294,
"appkey": "easemob-demo#test",
"user": "easemob-demo#test_hxtest@easemob.com/android_b069b852-79a3-3c9e-9d08-ee5176b95df5",
"reason": "login",
"os": "android",
"ip": "211.157.146.18:48098",
"version": "3.7.1",
"status": "online"
}