即时通讯

  • 即时通讯 > API 文档 > 服务端API > 状态回调

    状态回调

    最近更新时间: 2022-01-19 18:37:32

    用户状态回调

    通过注册用户在线状态回调,系统会将应用内用户的在线状态变更事件,实时抄送到设定的服务器。

    开通IM 商业版后,可以在Portal 后台,IM管理页面的【高级功能】部分,开启【信息订阅定制】服务。并设置用户在线状态回调地址。

    用户系统可以根据该事件,作为一些自己业务的触发。

    回调的方法

    系统通过HTTP POST 方法,调用所设置的HTTP 接口。

    回调的消息格式

    回调消息,通过JSON 字符串的形式,在Body 中传递。使用UTF-8 编码。消息样例如下:

    {
      "timestamp": "1621838541791",  //事件时间戳(毫秒)  
      "node": "fireplace@10.244.1.69", //事件产生的节点
      "xid": {
        "uid": "6597439728320",   // 用户ID
        "deviceSN": 125171        // 用户设备序号
      },
      "status": "ONLINE",         // ONLINE表示上线,OFFLINE表示下线
      "reason": "",               // 原因: replaced 表示设备被其它设备踢下线
      "ip": "10.244.1.1:65167",   // 客户端IP
      "version": "3.0.2",         // 客户端SDK版本号
      "appId": "eajzxtgmgets"     // APPID
    }
    

    回调接口返回

    收到,并成功处理消息回调后,接口应该返回 HTTP 状态码 200。

    消息回调

    通过注册系统回调,实时订阅用户消息。系统将会将应用内用户发送的消息实时抄送到设定的服务器。

    此功能可被用来作为应用消息的转存,或者作为其他业务的触发机制。

    开通商业版后,可以在Portal 管理后台,IM管理页面的【信息订阅定制】部分,配置【用户消息回调地址】来接收消息回调。

    请确保接收服务器的可用性,如果指定服务不可用或者网络原因中断,系统会尝试推送三次,如果仍然不可推送,会将消息存入失败队列,失败队列内消息默认存放三天,可以通过接口轮询获取。

    回调的方法

    系统通过HTTP POST 方法,调用所设置的HTTP 接口。

    回调的消息格式

    回调消息,通过JSON 字符串的形式,在Body 中传递。使用UTF-8 编码。消息样例如下:

    
    { 
      "timestamp": "1583290166510", // 时间戳字符串类型 
      "node": "fireplace@10.244.0.112", // 消息发送节点
      "from": { // 消息发送者
        "deviceSN": 393585 
        "uid": "6597271396128", 
      }, 
        "to": {  // 消息接收者
        "uid": "6597321892992" 
      }, 
      "type": "CHAT", // 消息类型, 单聊: CHAT; 群聊: GROUPCHAT
      "msgId": "711785029071536147", // 消息ID
      "innerFrom": { // 消息实际发送者, TYPE为GROUPCHAT
        "uid": "6597271396128", 
        "deviceSN": 393585 
      }, 
      "innerTo": { 
        "uid": "6597321892992" 
      }, 
      "content": "hello, callback!", // 消息内容
      "metaTimestamp": "1583290166473", 
      "appId": "welovemaxim" // 消息appId
    }
    

    回调接口返回

    收到,并成功处理消息回调后,接口应该返回 HTTP 状态码 200。

    内容安全加强回调

    使用内容安全加强回调,对接第三方内容安全服务,高效过滤色情、广告、涉政、暴恐等多类垃圾文字及敏感词、违禁变种。实现协同过滤的目的。

    内容安全加强回调功能,可以在开通商业版后开通。在Portal 后台,IM管理页面的【高级功能】部分,开启【内容安全加强】功能,并配置内容安全的回调地址,账号信息。

    系统默认可以使用阿里云的内容安全服务。

    如果应用希望定制自己的过滤关键词,或者使用已经调校过的第三方内容安全服务,可以在第三方服务注册后在此配置开通。

    自定义安全接口实现规范

    如果用户设置自己的内容安全服务,需要实现一个服务兼容阿里云盾的接口即可。具体可以参考:

    该回调,在系统收到用户发送的消息,实际投递之前进行回调。当接口返回的Suggestion 是 “block”,则系统将不会最终发送改消息。

    以上内容是否对您有帮助?
  • Qvm free helper
    Close