全局禁言
更新时间:2021-12-31 该文档已不再维护,请看新版 3.X 文档。
新版文档地址:用户全局禁言
功能概述
全局禁言:包括单聊消息全局禁言、群组消息全局禁言和聊天室全局禁言。
- 帐号默认未设置单聊消息全局禁言。如果帐号被设置单聊消息全局禁言,在单聊消息禁言时间未到期时间内所有的单聊消息发送失败,到期后IM后台自动解除单聊消息禁言,解除后所有单聊消息就能发送正常;对于永久全局单聊禁言,全局单聊消息禁言时间一直不过期。
- 帐号默认未设置群组消息全局禁言。如果帐号被设置群组消息全局禁言,在群组消息禁言时间未到期时间内所有的群组消息发送失败,到期后IM后台自动解除群组消息禁言,解除后所有群组消息就能发送正常;对于永久全局群组禁言,全局群组消息禁言时间一直不过期。
- 帐号默认未设置聊天室消息全局禁言。如果帐号被设置聊天室消息全局禁言,在聊天室消息禁言时间未到期时间内所有的聊天室消息发送失败,到期后IM后台自动解除聊天室消息禁言,解除后所有聊天室消息就能发送正常;对于永久全局聊天室禁言,全局聊天室消息禁言时间一直不过期。
注:全局禁言期间,该帐户包含 SDK 端和服务器端调接口发消息都是会发送失败
功能典型场景说明
随着监管机制对应用监管的逐渐加强,安全合规成了应用的生命线。环信 IM 提供全局禁言功能,帮助应用实现用户账号级别的禁言管理功能,在发现违规用户后,可通过该功能对需要禁言的用户进行全局禁言操作,维护应用内良好的内容生态环境。
- 发现某用户,频繁往多个聊天室发送违规广告,对该用户全局聊天室禁言 15 天;
- 发现某用户,发表触犯红线的政治言论,先全局永久禁言,等用户申诉通过再解禁;
功能范围说明
- 支持设置帐号的单聊、群聊、聊天室消息全局禁言;
- 支持查询(单个)帐号的单聊、群聊、聊天室消息全局禁言;
- 支持查询 App Key 下所有账号的单聊、群聊、聊天室消息全局禁言。
接口功能说明
设置用户全局禁言
接口描述
设置单个帐号的单聊、群组、聊天室消息全局禁言。
基本信息
请求方法:POST
接入点: /{orgName}/{appName}/mutes
路径参数
参数 | 类型 | 是否必需 | 描述 |
orgName | String | 必需 | 您在环信管理后台创建的的公司或组织名称。 |
appName | String | 必需 | 您在环信管理后台创建的 APP 名称。 |
请求参数说明
字段 | 类型 | 是否必需 | 字段说明 |
username | string | 必需 | 设置禁言配置的 username。 |
chat | integer | 非必需 | 单聊消息禁言时间,单位为秒,非负整数,最大值为 2147483647,`0` 表示取消该帐号的单聊消息禁言,`-1` 表示该帐号被设置永久禁言,其它值表示该帐号的具体禁言时间,负值为非法值。 |
groupchat | integer | 非必需 | 群组消息禁言时间,单位为秒,规则同上。 |
chatroom | integer | 非必需 | 聊天室消息禁言时间,单位为秒,规则同上。 |
请求头
参数 | 类型 | 是否必需 | 描述 |
Authorization | String | 必需 | 鉴权 token,管理员 TOKEN(含)以上权限。 |
响应体
参数 | 类型 | 描述 |
result | String | `ok` 表示设置成功。 |
请求示例
curl -L -X POST 'https://a1.easemob.com/easemob-demo/testappkey/mutes' \
-H 'Authorization: Bearer {{token}}' \
-H 'Content-Type: application/json' \
--data-raw '{
"username": "zs1",
"chat": 100,
"groupchat": 100,
"chatroom": 100
}'
响应示例
{
"path": "/mutes",
"uri": "https://a1.easemob.com/easemob-demo/testappkey/mutes",
"timestamp": 1631609754727,
"organization": "easemob-demo",
"application": "357169f0-492a-11e9-9b3a-f1af649cc48d",
"action": "post",
"data": {
"result": "ok"
},
"duration": 74,
"applicationName": "testappkey"
}
查询单个帐号全局禁言
接口描述
查询单个用户的单聊/群聊/聊天室消息禁言
基本信息
方法:GET
接入点: /{orgName}/{appName}/mutes/username
路径参数
参数 | 类型 | 是否必需 | 描述 |
orgName | String | 必需 | 您在环信管理后台创建的的公司或组织名称。 |
appName | String | 必需 | 您在环信管理后台创建的 APP 名称。 |
username | String | 必需 | 查询禁言信息的用户名。 |
请求头
参数 | 类型 | 是否必需 | 描述 |
Content-Type | String | 必需 | `application/json` 内容类型。 |
Authorization | String | 必需 | 鉴权 Token,管理员 TOKEN (含)以上权限。 |
响应体
参数 | 类型 | 描述 |
userid | String | 设置禁言的账号 |
chat | Int | 单聊消息剩余禁言时长,单位为秒,非负整数。最大值为 2147483647,0表示取消该帐号的单聊消息禁言,-1 表示该帐号被设置永久禁言,其它值表示该帐号的具体禁言时间,负值为非法值。 |
groupchat | Int | 群组消息剩余禁言时长,单位为秒,规则同上。 |
chatroom | Int | 聊天室消息剩余禁言时长,单位为秒,规则同上。 |
unixtime | Int | 当前操作的 Unix 时间戳。 |
请求示例
curl -L -X GET 'https://a1.easemob.com/easemob-demo/testappkey/mutes/zs1' \
-H 'Authorization: Bearer {{token}}' \
-H 'Content-Type: application/json'
响应示例
{
"path": "/mutes",
"uri": "https://a1.easemob.com/easemob-demo/testappkey/mutes",
"timestamp": 1631609831800,
"organization": "easemob-demo",
"application": "357169f0-492a-11e9-9b3a-f1af649cc48d",
"action": "get",
"data": {
"userid": "easemob-demo#restys_zs1",
"chat": 96,
"groupchat": 96,
"chatroom": 96,
"unixtime": 1631609831
},
"duration": 13,
"applicationName": "testappkey"
}
查询 APP KEY 的用户禁言
接口描述
查询 App Key下的用户禁言剩余时间的集合。
基本信息
方法:GET
接入点: /{orgName}/{appName}/mutes
路径参数
参数 | 类型 | 是否必需 | 描述 |
orgName | String | 必需 | 您在环信管理后台创建的的公司或组织名称 |
appName | String | 必需 | 您在环信管理后台创建的APP名称 |
### 请求头
参数 | 类型 | 是否必需 | 描述 |
Authorization | String | 必需 | 鉴权token,管理员TOKEN(含)以上权限 |
请求体
参数 | 类型 | 是否必需 | 说明描述 |
pageNum | Int | 必需 | 请求查询第几页 |
pageSize | Int | 必需 | 请求查询分页查询的数量 |
响应体
参数 | 类型 | 描述 |
username | String | 设置禁言的用户名 |
chat | Int | 单聊消息剩余禁言时长,单位为秒,非负整数。最大值为2147483647,0表示取消该帐号的单聊消息禁言,-1表示该帐号被设置永久禁言,其它值表示该帐号的具体禁言时间,负值为非法值 |
groupchat | Int | 群组消息剩余禁言时长,单位为秒,规则同上 |
chatroom | Int | 聊天室消息剩余禁言时长,单位为秒,规则同上 |
unixtime | Int | 当前操作的unixtime时间戳 |
请求示例
curl -L -X GET 'https://a1.easemob.com/easemob-demo/testappkey/mutes?pageNum=1&pageSize=10' \
-H 'Authorization: Bearer {{token}}' \
-H 'Content-Type: application/json'
响应示例
{
"path": "/mutes",
"uri": "https://a1.easemob.com/easemob-demo/testappkey/mutes",
"timestamp": 1631609858771,
"organization": "easemob-demo",
"application": "357169f0-492a-11e9-9b3a-f1af649cc48d",
"action": "get",
"data": {
"data": [
{
"username": "zs2",
"chatroom": 0
},
{
"username": "zs1",
"groupchat": 69
},
{
"username": "zs1",
"chat": 69
},
{
"username": "zs1",
"chatroom": 69
},
{
"username": "h2",
"chatroom": 0
},
{
"username": "h2",
"groupchat": 0
},
{
"username": "h2",
"chat": 0
}
],
"unixtime": 1631609858
},
"duration": 17,
"applicationName": "testappkey"
}
响应码
状态码 | 描述 |
200 | 请求成功。 |
400 | 请求参数错误,请根据返回提示检查。 |
401 | 用户权限错误。 |
403 | 服务未开通或权限不足。 |
429 | 单位时间内请求过多。 |
500 | 服务器内部错误。 |