功能说明
App 管理员和群主可以对直播群成员设置不同的标记以区分不同类型的群成员。该功能需旗舰版,并且在 IM 控制台“群功能配置”中开通“直播群在线成员列表”功能。其他套餐版本调用该API将返回失败。
接口调用说明
适用的群组类型
群组类型 ID | 是否支持此 REST API |
Private | 不支持,同新版本中的 Work(好友工作群) |
Public | 不支持 |
ChatRoom | 不支持,同新版本中的 Meeting(临时会议群) |
AVChatRoom | 支持 |
Community(社群) | 不支持 |
注意
此功能需 旗舰版套餐,并且已开通“直播群在线成员列表”功能(控制台“群功能配置”)。
其他套餐版本调用该API返回失败。
每个直播群可以设置最多不超过10个不同类型的标记。
每一个标记可以设置最多1000人,该限制和直播群在线成员列表的1000人互相独立。
被设置标记的群成员需要在线(设置标记为500的成员除外,参见“特殊标记”)。当成员退群、掉线时标记信息会被清除,可以在通过第三方回调在该成员进群、上线时重新设置标记。
请求 URL 示例
https://xxxxxx/v4/group_open_avchatroom_http_svc/modify_user_info?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json
请求参数说明
参数 | 说明 |
xxxxxx | SDKAppID 所在国家/地区对应的专属域名: 中国: console.tim.qq.com 新加坡: adminapisgp.im.qcloud.com 首尔: adminapikr.im.qcloud.com 法兰克福: adminapiger.im.qcloud.com 硅谷: adminapiusa.im.qcloud.com 雅加达: adminapiidn.im.qcloud.com |
v4/group_open_avchatroom_http_svc/modify_user_info | 请求接口 |
sdkappid | 创建应用时即时通信 IM 控制台分配的 SDKAppID |
identifier | |
usersig | |
random | 请输入随机的32位无符号整数,取值范围0 - 4294967295 |
contenttype | 请求格式固定值为 json |
最高调用频率
200次/秒。
请求包示例
为直播群中teacher10设置标记1000,为直播群中student9设置标记1001:
{"GroupId": "@TGS#a6I4ZUUGO","CommandType": 1,"MemberList": [{"Member_Account": "teacher10","Marks": [1000]},{"Member_Account": "student9","Marks": [1001]},]}
为直播群中teacher10取消标记1000,为直播群中student9取消标记1001:
{"GroupId": "@TGS#a6I4ZUUGO","CommandType": 2,"MemberList": [{"Member_Account": "teacher10","Marks": [1000]},{"Member_Account": "student9","Marks": [1001]},]}
请求包字段说明
字段 | 类型 | 属性 | 说明 |
GroupId | String | 必填 | 操作的群 ID |
CommandType | Integer | 必填 | 1:设置标记 2:删除标记 |
MemberList | Array | 必填 | 需要设置的账号列表,每次可以设置最多不超过500个账号,每个群最多只能设置10个不同的标记。标记为大于等于1000的数字 |
应答包体示例
{"ActionStatus": "OK","ErrorCode": 0,"ErrorInfo": "","CommandType": 1,"MemberList": [{"Member_Account": "teacher10","Marks": [1000]},{"Member_Account": "student9","Marks": [1001]}]}
应答包字段说明
字段 | 类型 | 说明 |
ActionStatus | String | 请求处理的结果: OK:表示处理成功 FAIL:表示失败 |
ErrorCode | Integer | 错误码: 0:表示成功 非0:表示失败 |
ErrorInfo | String | 错误信息 |
MemberList | Object | 设置成功的成员列表。批量设置多个账号时,如果其中某个账号不在线则该账号不会返回。当所有被设置的账号不在线/不存在时,后台返回失败。 |
特殊标记
App管理员和群主可以为群成员设置范围为 [1000, +) 的标记,除此之外,App管理员可以设置IM预置的特殊标记,支持的特殊标记如下
标记值 | 说明 |
500 | 当某个成员被设置500标记时,该成员被认为一直在线(忽略断线事件),最长不超过3天。 |
600 | 当某个成员被设置600标记时,在拉取在线成员列表时该成员将被隐藏,除非显式指定按该成员的标志拉取。 |
错误码说明
除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为200。真正的错误码,错误信息是通过应答包体中的 ErrorCode、ErrorInfo 来表示的。
公共错误码(60000到79999)参见 错误码 文档。
本 API 私有错误码如下:
错误码 | 含义说明 |
10001 | 用户未登录错误,请检查 admin 账号和 usersig 是否正确 |
10002 | 系统错误,请再次尝试或联系技术客服 |
10003 | 请求命令非法,请再次尝试或联系技术客服 |
10004 | 参数非法。请根据应答包中的 ErrorInfo 字段,检查必填字段是否填充,或者字段的填充是否满足协议要求 |
10007 | 权限不足,本API需App管理员或者群主调用 |
10010 | 群组不存在,或者曾经存在过,但是目前已经被解散 |
10015 | 群组 ID 非法,请检查群组 ID 是否填写正确 |