更新时间: 2021-04-01

# 功能描述

聊天室场景下,融云服务端默认单个聊天室中上行消息处理能力是每 200 毫秒 40 条,其中 20 条为高优先级消息使用配额,另外 20 条为高优先级和低优先级消息共同使用。

在聊天室消息量较大的情况下,融云服务器会按消息发送的时间顺序,将超出消费上限的最新消息丢弃,确保服务器稳定。

针对以上情况,为保证聊天室中重要消息正常下发,融云提供了以下服务:

  1. 聊天室用户白名单

白名单中用户发送的消息受到保护,在聊天室消息量较大的情况下也不被丢弃。同时用户处于被保护状态,在离线 30 秒后有新消息产生时或离线后聊天室中产生 30 条消息时不会被自动踢出聊天室。

  1. 聊天室低级别消息

通过接口设置的消息类型为低级别的消息,默认情况下全部为高的消息,当服务器负载高时低优先级的消息优先被丢弃,这样可以让出资源给高优先级的消息。

  1. 聊天室消息白名单

该名单中的消息受到保护,在聊天室消息量较大的情况下不被优先丢弃。

未设置情况下融云的所有消息均为高优先级消息,设置后 30 分钟生效,开发者可在开发者后台IM 商用版-增值服务 (opens new window)中开通后才能使用,开通聊天室用户白名单功能后聊天室消息白名单功能同时可以使用。

# 用户白名单

白名单中用户发送的消息受到保护,在聊天室消息量较大的情况下也不被丢弃。同时用户处于被保护状态,在离线 30 秒后有新消息产生时或离线后聊天室中产生 30 条消息时不会被自动踢出聊天室。

开通聊天室用户白名单功能后聊天室消息白名单功能同时可以使用。

# 添加白名单用户

请求地址: https://数据中心域名/chatroom/user/whitelist/add.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数

参数 类型 必传 说明
chatroomId String 聊天室 Id。
userId String 聊天室中用户 Id,可提交多个,聊天室中白名单用户最多不超过 5 个。

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。

示例代码:

Request:

POST /chatroom/user/whitelist/add.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Nonce: 14314
Timestamp: 1408710653491
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: application/x-www-form-urlencoded

chatroomId=16&userId=123&userId=456
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200}
已复制
1
2
3
4
# 移除白名单用户

请求地址: https://数据中心域名/chatroom/user/whitelist/remove.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

参数 类型 必传 说明
chatroomId String 聊天室 Id。
userId String 聊天室白名单中用户 Id,可提交多个,最多不超过 5 个。

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。

示例代码:

Request:

POST /chatroom/user/whitelist/remove.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Nonce: 14314
Timestamp: 1408710653491
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: application/x-www-form-urlencoded

chatroomId=16&userId=123&userId=456
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200}
已复制
1
2
3
4
# 查询白名单用户

请求地址: https://数据中心域名/chatroom/user/whitelist/query.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

参数 类型 必传 说明
chatroomId String 聊天室 Id。

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。
users String[] 白名单用户数组。

示例代码:

Request:

POST /chatroom/user/whitelist/query.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Nonce: 14314
Timestamp: 1408710653491
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: application/x-www-form-urlencoded

chatroomId=16
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200,"users":["user1","user2"]}
已复制
1
2
3
4

# 低级别消息

通过接口设置的消息类型为低级别的消息,默认情况下全部为高的消息,当服务器负载高时低优先级的消息优先被丢弃,这样可以让出资源给高优先级的消息,确保重要的消息不被丢弃。

# 添加低级别消息

请求地址: https://数据中心域名/chatroom/message/priority/add.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

参数 类型 必传 说明
objectName String 低优先级的消息类型,每次最多提交 5 个,设置的消息类型最多不超过 20 个。

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。

示例代码:

Request:

POST /chatroom/message/priority/add.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Timestamp: 1408710653491
Nonce:14314
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: Application/x-www-form-urlencoded

objectName=RC:VcMsg&objectName=RC:ImgTextMsg&objectName=RC:ImgMsg
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200}
已复制
1
2
3
4
# 移除低级别消息

请求地址: https://数据中心域名/chatroom/message/priority/remove.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

参数 类型 必传 说明
objectName String 低优先级的消息类型,每次最多提交 5 个

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。

示例代码:

Request:

POST /chatroom/message/priority/remove.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Timestamp: 1408710653491
Nonce:14314
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: Application/x-www-form-urlencoded

objectName=RC:VcMsg&objectName=RC:ImgMsg
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200}
已复制
1
2
3
4
# 查询低级别消息

请求地址: https://数据中心域名/chatroom/message/priority/query.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。
objectNames String[] 消息类型数组。

示例代码:

Request:

POST /chatroom/message/priority/query.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Timestamp: 1408710653491
Nonce:14314
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: Application/x-www-form-urlencoded
已复制
1
2
3
4
5
6
7

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "code":200,
  "objectNames":["RC:ImgMsg","RC:ImgTextMsg","RC:VcMsg"]
}
已复制
1
2
3
4
5
6
7

# 消息白名单

聊天室消息白名单功能,该名单中的消息受到保护,在聊天室消息量较大的情况下也不被丢弃。开通聊天室消息白名单功能后聊天室用户白名单功能同时可以使用。

# 添加消息白名单

请求地址: https://数据中心域名/chatroom/whitelist/add.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

参数 类型 必传 说明
objectnames String 消息标识,最多不超过 20 个,自定义消息类型,长度不超过 32 个字符

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。

示例代码:

Request:

POST /chatroom/whitelist/add.json HTTP/1.1
Host: apiqa.cn.ronghub.com
App-Key: c9kqb3rdkbb7j
Nonce: 1167631608
Timestamp: 1408710653491
Signature: c8ef4d25e5684e9fca820140eaf6a36abc4fbc93
Content-Type: application/x-www-form-urlencoded

objectnames=RC:VcMsg&objectnames=RC:ImgTextMsg&objectnames=RC:ImgMsg
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200}
已复制
1
2
3
4
# 移除消息白名单

请求地址: https://数据中心域名/chatroom/whitelist/delete.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

参数 类型 必传 说明
objectnames String 消息标识,最多不超过 20 个,自定义消息类型,长度不超过 32 个字符

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。

示例代码:

Request:

POST /chatroom/whitelist/delete.json HTTP/1.1
Host: apiqa.cn.ronghub.com
App-Key: c9kqb3rdkbb7j
Nonce: 1167631608
Timestamp: 1408710653491
Signature: c8ef4d25e5684e9fca820140eaf6a36abc4fbc93
Content-Type: application/x-www-form-urlencoded

objectnames=RC:VcMsg&objectnames=RC:ImgTextMsg&objectnames=RC:ImgMsg
已复制
1
2
3
4
5
6
7
8
9

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{"code":200}
已复制
1
2
3
4
# 查询消息白名单

请求地址: https://数据中心域名/chatroom/whitelist/query.json

请求方法: POST

调用频率: 没有限制

签名规则: 所有请求融云服务端 API 接口的请求均需要进行规则校验,详细请参考 通用 API 接口签名规则

输入参数:

返回结果:

返回值 返回类型 说明
code Int 返回码,200 为正常。
whitlistMsgType String[] 消息类型数组。

示例代码:

Request:

POST /chatroom/whitelist/query.json HTTP/1.1
Host: api-cn.ronghub.com
App-Key: uwd1c0sxdlx2
Timestamp: 1408710653491
Nonce:14314
Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: Application/x-www-form-urlencoded
已复制
1
2
3
4
5
6
7

Response:

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "code":200,
  "whitlistMsgType":["RC:ImgMsg","RC:ImgTextMsg","RC:VcMsg"]
}
已复制
1
2
3
4
5
6
7

文档是否解决您的问题 ?

如果遇到产品相关问题,您可 提交工单 寻求帮助