SDK 文档

服务端 API

有奖调研

添加好友之前回调

最近更新时间:2021-09-24 16:27:40

功能说明

App 后台可以通过该回调实时监控用户的加好友请求,包括:

  • 实时监控用户的加好友请求。
  • 拦截恶意加好友请求。

注意事项

  • 要启用回调,必须配置回调 URL,并打开本条回调协议对应的开关,配置方法详见 第三方回调配置 文档。
  • 回调的方向是即时通信 IM 后台向 App 后台发起 HTTP POST 请求。
  • App 后台在收到回调请求之后,务必校验请求 URL 中的参数 SDKAppID 是否是自己的 SDKAppID。
  • 其他安全相关事宜请参考 第三方回调简介:安全考虑 文档。

可能触发该回调的场景

  • App 用户通过客户端发起加好友请求,请求添加好友。

回调发生时机

即时通信 IM 后台收到来自 App 的加好友请求后。

注意:

通过 REST API 添加好友不会触发回调。

接口说明

请求 URL 示例

以下示例中 App 配置的回调 URL 为 https://www.example.com
示例:

https://www.example.com?SdkAppid=$SDKAppID&CallbackCommand=$CallbackCommand&contenttype=json&ClientIP=$ClientIP&OptPlatform=$OptPlatform

请求参数说明

参数 说明
https 请求协议为 HTTPS,请求方式为 POST
www.example.com 回调 URL
SdkAppid 创建应用时在即时通信 IM 控制台分配的 SDKAppID
CallbackCommand 固定为:Sns.CallbackPrevFriendAdd
contenttype 固定值为:json
ClientIP 客户端 IP,格式如:127.0.0.1
OptPlatform 客户端平台,取值参见 第三方回调简介:回调协议 中 OptPlatform 的参数含义

请求包示例

{
  "CallbackCommand": "Sns.CallbackPrevFriendAdd",
  "Requester_Account": "id",
  "From_Account": "id",
  "FriendItem": [
    {
      "To_Account": "id1",
      "Remark": "remark1",
      "GroupName": "group1",
      "AddSource": "AddSource_Type_Android",
      "AddWording": "this is id1!"
    },
    {
      "To_Account": "id2",
      "Remark": "remark2",
      "GroupName": "group1",
      "AddSource": "AddSource_Type_Android",
      "AddWording": "this is id2!"
    }
  ],
  "AddType": "Add_Type_Both",
  "ForceAddFlags": 0,
  "EventTime": 1631777344870
}

请求包字段说明

字段 类型 说明
CallbackCommand String 回调命令
Requester_Account String 请求发起方的 UserID
From_Account String 请求添加好友的用户的 UserID
FriendItem Array 加好友请求的参数
To_Account String 请求添加的用户的 UserID
Remark String From_Account 对 To_Account 设置的好友备注,详情可参见 标配好友字段
GroupName String From_Account 对 To_Account 设置的好友分组,详情可参见 标配好友字段
AddSource String 加好友来源,详情可参见 标配好友字段
AddWording String 加好友附言,详情可参见 标配好友字段
AddType String 加好友方式(默认双向加好友方式):
  • Add_Type_Single 表示单向加好友
  • Add_Type_Both 表示双向加好友
  • ForceAddFlags Integer 管理员强制加好友标记:
  • 1 表示强制加好友
  • 0 表示常规加好友方式
  • EventTime Integer 毫秒时间戳

    应答包示例

    {
      "ActionStatus": "OK",
      "ErrorCode": 0,
      "ErrorInfo": "",
      "ResultItem": [
        {
          "To_Account": "id1",
          "ResultCode": 0,
          "ResultInfo": ""
        },
        {
          "To_Account": "id2",
          "ResultCode": 0,
          "ResultInfo": ""
        }
      ]
    }

    应答包字段说明

    字段 类型 属性 说明
    ActionStatus String 必填 请求处理的结果,OK 表示处理成功,FAIL 表示失败
    ErrorCode Integer 必填 错误码:
  • 0表示 App 后台处理成功
  • 非0值表示 App 后台处理失败,默认放过
  • 如果 App 后台处理失败,请将错误码设置在[38000, 39000]
  • ErrorInfo String 必填 错误信息
    ResultItem Array 必填 App 后台的处理结果
    To_Account String 必填 请求添加的用户的 UserID
    ResultCode Integer 必填 错误码:
  • 0表示允许加好友
  • 非0值表示不允许加好友
  • 如果不允许加好友,请将错误码设置在[38000, 39000]
  • ResultInfo String 必填 错误信息

    参考

    目录