跳到主要内容

同步群信息修改状态

当群组资料发生变更时,融云即使通讯(IM)将实时把修改状态同步到您的应用服务器。

开通服务

  1. 调用此接口前,您须在控制台开通信息托管服务。详情请参阅开启用户信息托管

  2. 设置群组资料变更的服务器回调地址。

回调方法

请求方法: POST

数据格式application/json

融云 IM 服务端会在 POST 请求 URL 中添加签名参数,您可通过签名验证调用者身份和数据有效性,详情请参阅服务端回调签名

正文参数

HTTP 请求正文数据格式为 application/json,支持以下参数:

参数类型必传说明
profilesJsonArray批量同步群信息变更
profiles 结构
profiles[i].groupIdString群 ID
profiles[i].groupNameString群名称
profiles[i].timeLong修改时间
profiles[i].optUserIdString操作的用户
profiles[i].groupProfileJSON群内置信息,为 JSON 格式。具体的 key 请参考下方详情。
profiles[i].groupExtProfileJSON群扩展信息
profiles[i].permissionsJSON群权限信息,为 JSON 格式。具体的 key 请参考下方详情。

groupProfile 中的 key 如下:

key 值类型长度/取值范围描述
introductionString不超过 512 个字符群简介
announcementString不超过 1024 个字符群公告
portraitUrlString不超过 128 个字符群头像地址

permissions 中的 key 如下:

key 值类型长度/取值范围描述
joinPermNumber取值范围:
  • 0:需要群主验证(默认)
  • 1:不用验证
  • 2:群管理员或群主验证
  • 3: 不允许任何人加入
加入群权限
removePermNumber取值范围:
  • 0:群主(默认)
  • 1:群主+群管理员
  • 2: 所有人
将群成员移出群组权限
memInvitePermNumber取值范围:
  • 0:群主(默认)
  • 1:群主+群管理员
  • 2: 所有人
邀请他人入群权限
invitePermNumber取值范围:
  • 0:不需要被邀请人同意(默认)
  • 1: 需要被邀请人同意
邀请加入群组处理方式
profilePermNumber取值范围:
  • 0:群主(默认)
  • 1:群主+群管理员
  • 2: 所有人
修改群资料及权限
memProfilePermNumber取值范围:
  • 0:群主+群管理员+自己(默认)
  • 1:群主+自己
  • 2: 仅自己
设置群成员资料权限

回调代码示例

以下示例假设您在开通服务页面配置的回调接收地址为 http://example.com/group/info/profile/sync.php

HTTP
POST /user/profile/sync HTTP/1.1
Host: example.com
Content-Type: application/json


[
{
"groupId":"groupId",
"groupName":"groupName",
"time":1574476797772,
"optUserId":"userId",
"groupProfile": {"introduction":"introduction","portraitUrl":"XXX"},
"groupExtProfile": {"ext_Profile":"testExt"},
"permissions": {"joinPerm":2,"memInvitePerm":1}
},
{
"groupId":"groupId1",
"groupName":"groupName1",
"time":1574476797774,
"optUserId":"userId1",
"groupProfile": {"introduction":"introduction1","portraitUrl":"XXX1"},
"groupExtProfile": {"ext_Profile":"testExt"},
"permissions": {"joinPerm":1,"memInvitePerm":2}
}
]

响应回调请求

提示
  • 只要收到 HTTP 200 OK 成功响应,融云服务端即认为状态已同步。
  • 如果应答超时 5 秒,融云服务端将重试 2 次。如果仍然失败,则不再同步此条状态。
  • 如短时间内发生大面积超时,融云会暂时停止向您的服务器发送回调请求,并于 1 分钟后恢复。