聊天室用户标签禁言

大约 3 分钟

聊天室用户标签禁言

功能说明

  • 可以控制标签下的用户是否可以在聊天室中发言。
  • 调用该接口后,被禁言的用户会添加到聊天室禁言列表中。
  • 可以设置禁言指定标签下的用户禁言一段时间或永久禁言。若禁言一段时间,时间到期后自动解除禁言。
  • 用户离开聊天室后再进入,则用户标签失效。

开通功能

环信即时通讯 IM 支持设置用户在聊天室中的标签,并按标签用户禁言。要使用该 API,需联系环信商务开通。

调用频率上限

100 次/秒/App Key

请求 URL

PUT https://{host}/{org_name}/{app_name}/chatrooms/{chatroom_id}/tag/mute
参数类型是否必需描述
chatroom_idString聊天室 ID。

关于请求 URL 中的参数说明,详见 请求 URL 参数介绍

请求示例

# 将 <YourAppToken> 替换为你在服务端生成的 App Token

curl -X PUT 'https://XXXX/XXXX/XXXX/chatrooms/12XXXX11/tag/mute' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer <YourAppToken>' \
-d '{
    "tag": "t1",
    "mute_duration": 30
}'

请求 header 参数

关于 Content-TypeAcceptAuthorization 字段的说明,详见 请求 header 参数说明

请求 body 参数

参数类型是否必需描述
mute_durationLong禁言时长,单位为秒。例如,传入 60,则禁言在 60 秒后到期。
0 表示取消禁言,-1 表示永久禁言。
tagString标签名称,标签名称长度不能超过 32 个字符。

响应示例

{
  "action": "put",
  "application": "52XXXXf0",
  "uri": "https://XXXX/XXXX/XXXX/chatrooms/12XXXX11/tag/mute",
  "entities":[],
  "data": {
    "result": true
  },
  "timestamp": 1489072189508,
  "duration": 0,
  "properties":{}, 
  "organization": "XXXX",
  "applicationName": "testapp"
}

响应 body 字段

如果返回的 HTTP 状态码为 200,表示请求成功,响应包体中包含以下字段:

字段类型描述
dataJSON实际获取的禁言结果。
- resultBool是否成功禁言:
- true:是;
- false:否。

响应体中的其他参数说明如下表所示:

参数类型描述
actionString请求方法。
applicationString应用在系统内的唯一标识。该标识由系统生成,开发者无需关心。
uriString请求 URL。
entitiesJSON Array响应实体。
timestampLongUnix 时间戳,单位为毫秒。
durationInt从发送请求到响应的时长,单位为毫秒。
propertiesJSON响应属性。
organizationString环信即时通讯 IM 为每个公司(组织)分配的唯一标识,与请求参数 org_name 相同。
applicationNameString你在环信控制台创建应用时填入的应用名称,与请求参数 app_name 相同。

如果返回的 HTTP 状态码非 200,表示请求失败。你可以参考 错误码 了解可能的原因。

错误码

如果返回的 HTTP 状态码非 200,表示请求失败,可能提示以下错误码:

HTTP 状态码错误类型错误提示可能原因处理建议
401unauthorizedUnable to authenticate (OAuth)token 不合法,可能过期或 token 错误。使用新的 token 访问。
404resource_not_foundgrpID XX does not exist!聊天室不存在。使用合法的聊天室 ID。
403forbidden_opGroup tag mute is disabled聊天室标签禁言功能没有开通。联系环信商务开通聊天室标签禁言功能。
404resource_not_foundgroup tag not found聊天室标签不存在。先为用户设置聊天室标签再进行操作。
403exceed_limittag length exceeds limit!标签名称长度超过限制。控制标签名称长度。

关于其他错误,你可以参考 响应状态码 了解可能的原因。

上次编辑于: