内容审核场景实践
场景 1:社交应用中的聊天内容审核
通过融云的审核服务,您可以防止社交场景中的色情诱导、广告引流以及涉政涉暴内容,详见审核能力概述。
内容审核服务
开通位置
您可以通过融云控制台开通内容审核服务。

计费说明
开发环境:免费试用 30 天; 生产环境:首次开通可免费体验 7 天,免费额度用尽后服务将关停。如需再次开启需预存 600 元并开始计费。
每日结算前一天统计用量费用,月底按整体使用量核算月度费用,费用按最小条数计算,不足一分钱不计费。
详细计费规则请参考知识库:IM 审核计费说明
常规审核方案
融云内容审核产品中的 IM 审核服务,为 IM 内容提供全面保障与支持,支持审核文本、图片、语音片段和小视频,精准识别敏感信息。 使用该服务无需额外代码集成,只需开通服务即可实现消息自动审核。如需调整审核力度或有其他审核需求,可联系商务经理沟通。
自定义事件审核方案
在您的实际业务中,根据用户的级别、性别、地域等背景信息,可以执行不同的审核策略。
实现步骤
- 审核方根据客户的业务需求,分配不同的审核事件 ID(eventId)。例如:根据性别进行审核时,数美需要分别提供男性和女性的审核事件 ID(eventId)。在实际操作前,可联系商务经理创建审核群进行对接。
- 开通内容审核支持自定义事件审核功能。此功能暂不支持自助开通,请提交工单申请。
- 在通过融云 SDK 发送消息时,根据发送消息用户的不同,携带相应的事件 ID。融云服务端在送审时会将事件 ID 同步给数美,数美会根据传入的事件 ID 执行相应的审核策略。
计费说明
免费
客户端集成代码示例
- Android
- iOS
- Web
从 5.6.8 版本开始支持,发送消息时,设置消息对象中的 auditInfo
内容,如下:
MessageAuditInfo messageAuditInfo =
new MessageAuditInfo(
MessageAuditType.ALLOW,
"",
"strategy");
textMessage.setAuditInfo(messageAuditInfo);
Message message = Message.obtain("targetId", Conversation.ConversationType.PRIVATE, textMessage);
属性说明:
- auditType:审核类型,需要设置为审核
MessageAuditType.ALLOW
。 - strategy:对应为数美审核的事件 ID(
eventId
)。
注:使用默认审核逻辑时可不设置 auditInfo
从 5.6.8 版本开始支持,发送消息时,设置消息对象中的 auditInfo
内容,如下:
RCMessageAuditInfo *auditInfo = [[RCMessageAuditInfo alloc] init];
auditInfo.auditType = enableAudit ? RCMessageAuditTypeAllow : RCMessageAuditTypeDisallow;
auditInfo.project = auditProject;
auditInfo.strategy = auditStrategy;
messageContent.auditInfo = auditInfo;
auditType 类型说明:
typedef NS_ENUM(NSInteger, RCMessageAuditType) {
/// 不需要审核
RCMessageAuditTypeDisallow = 0,
/// 需要审核
RCMessageAuditTypeAllow = 1,
};
属性说明:
- auditType:审核类型,需设置为审核。
- strategy:对应数美审核的事件 ID(
eventId
)。 - project:无需设置。
注:使用默认审核逻辑时可不设置 auditInfo
。
从 5.9.3 版本开始支持,发送消息时,设置消息对象中的 auditInfo
内容,如下:
new RongIMLib.TextMessage({
content: '',
audit?: {
/**
* 发送方指定是否送审, 1:送审(默认值),0:不送审
*/
auditType?: MessageAuditType,
/**
* 项目名称, 默认为空字符串
*/
project?: string,
/**
* 策略映射字段
*/
strategy?: string,
}
})
属性说明:
- auditType:审核类型,需要设置为审核。
- strategy:对应为数美审核的事件 ID(
eventId
)。
如果使用默认审核逻辑,则无需设置 auditInfo
。
Server API 接口
通过 Server API 发送消息时,可以在消息体中添加 audit
属性内容来实现:
{
"content":"Hello world! 单聊消息 ",
.....
"audit":
{
"auditType" : 1,
"strategy" : "message_restrict", // 例子,实际与数美的事件值一致。
},
"extra":""
}
属性说明:
- auditType:审核类型,需要设置为 1(表示需要审核)。
- strategy:对应数美审核的事件 ID(
eventId
)。
如果使用默认审核逻辑,则无需设置 audit
。
自定义消息审核方案
融云支持自定义消息的审核功能,但目前暂不支持自助配置。您可以通过提交工单申请开通。在提交工单时,请提供以下信息:
- 应用的 App Key。
- 会话类型:需要审核的自定义消息所属的会话类型(如单聊、群聊、聊天室、超级群)。
- 自定义消息的消息类型(
ObjectName
),例如:融云内置消息类型RC:TxtMsg
。 - 自定义消息中 Content 的 JSON 结构内容。目前仅支持 JSON 结构。以下是文本消息的示例结构:
{
"content":"Hello world!",
"user":
{
"id":"4242",
"name":"Robin",
"portrait":"http://example.com/p1.png",
"extra":"extra"
},
"extra":""
}
- 需要审核的 JSON 结构中的属性名称,例如客户的自定义消息结构如下,需要审核
msg
的内容:
{
"msg":"需要审核的内容",
"user":
{
"id":"4242",
"name":"Robin",
"portrait":"http://example.com/p1.png"
}
}
计费说明
免费
流式消息审核方案
该功能适用于大模型流式响应场景,例如 AI 生成文本、实时翻译或动态内容发送等场景,确保消息能够分块传输并逐段展示,减少延迟,增强互动性。 目前仅支持单聊和群聊场景使用,详见发送流式消息概述。
功能说明
- 同一流发送中断间隔最大 30 秒。超过 30 秒后服务自动判断为流已中断,不再接收后续发送的流数据,拉到的流 stopReason 为 29003。
- 在持续发流超时情况下最长支持 30 分钟,超过 30 分钟后自动阶段并丢弃 30 分钟后的流数据,拉到的流
stopReason
为 29004。
开通位置
不需要开通,通过设用 Server API 接口可直接发送流式消息。
支持 SDK 版本
- IMLib SDK:Android、iOS、Web、Electron SDK 在 5.16.0 版本开始支持。
- IMKit SDK:Android、iOS SDK 在 5.16.0 版本开始支持。
计费说明
流式消息审核费用与 IM 消息审核计费中的文本审核计费一致。
统计规则:
- 流式消息正常计入分发、下行统计,终端 SDK 每次拉取流式消息时,计做一个消息下行数据。
- 以单聊场景为例:
- 一个 SDK 发送消息,需要返回流式消息时,将产生 2 条分发消息,3 条下行消息
- 消息分发包括:流式消息首包、流式消息摘要的同步。
- 消息下行包括:流式消息首包、流式消息摘要的同步、SDK 拉取完整消息内容。
- 一个 SDK 发送消息,需要返回流式消息时,将产生 2 条分发消息,3 条下行消息
常见问题
- 群聊定向消息是否支持发送流式消息? 支持,最多可以定向发送 20 个群成员。
- 流式消息是否支持消息回调、消息路由功能? 支持,流式消息的首次发送时会生成一条消息,该条消息支持消息回调和消息路由功能,客户收到此条消息后,可根据消息 ID 获取流式消息内容。
- 一条流式消息,从开始到结束是否有时长限制? 从开始到结束最长为 30 分钟,超过后按超时处理自动结束。
获取 IM 审核结果
- 开通 IM 审核服务后,您可以在风控后台查询,具体操作请参考:风控后台常见功能操作文档。
- 通过审核结果回调,您可以实时接收审核结果详情,详见审核结果回调。
开通位置
登录融云控制台, 在 IM 与音视频审核页面中配置回调地址。请确保您提供的回调地址能够在公网正常访问。

计费说明
免费
服务端回调请求示例
POST review_result.php HTTP/1.1
Host: example.com
RC-App-Key: uwd1c0sxdlx2
RC-Timestamp: 1408710653491
RC-Nonce: 14314
RC-Signature: 45beb7cc7307889a8e711219a47b7cf6a5b000e8
Content-Type: application/json
{
"result":10000,
"content":“{****}”,//审核的消息结构 JSON
"serviceProvider":"ShuMei",
"msgUID":"596E-P5PG-4FS2-7OJK",
"resultDetail":"{****}";//审核结果详细 JSON 结构
}
- 只要返回 HTTP 200 OK 响应,服务端会认为状态已同步,无需返回任何参数。
- 如果响应超时超过 5 秒,服务端会重试推送 3 次;若仍然失败,即时通讯服务将默认下发该消息。
- 如果短时间内出现大面积超时,服务端会暂时停止请求您的服务器,并在 90 秒后重新尝试发送回调请求。
IM 用户信息托管审核方案
支持设置用户、好友、群组、群成员的资料审核。
- 针对 5.16.0 之前版本的 SDK 如设置了资料信息审核不通过后,将返回错误码 25480。
- 目前仅支持国内数据中心,暂不支持海外数据中心(数美针对此功能暂不支持外语审核能力)。
- 托管资料设置不支持融云敏感词审核。
开通位置
登录融云控制台,在 IM & 音视频审核>IM 信息托管配置中配置。

计费说明
托管资料审核与 IM 消息审核计费方式一致,审核数量与 IM 消息审核数累加在一起进行计费。
支持 SDK 版本
- IMLib SDK:Android、iOS、Web、Electron IMLib SDK 从 5.16.0 版本开始支持。
- IMKit SDK:Android、iOS SDK 从 5.16.0 版本开始支持。
Kit 层设置不成功时示例:

用户资料审核配置


功能描述:
- 内置属性:除头像外,所有属性都使用文本审核方式。
- 自定义属性:仅支持文本审核。
- 最多可以设置 20 个需要审核的资料信息(包括所有内置和自定义属性)。
- 设置审核时最少需要选择一个审核的属性。
- 审核默认策略:
- 文本:默认审核涉政&违禁&暴恐&色情&辱骂&广告&灌水&无意义,与 IM 消息审核一致。
- 图片:默认审核涉政识别、广告识别、色情识别、暴恐识别,涉政和广告为必选项不支持删除。
好友资料审核配置

功能描述:
- 内置属性和自定义属性都使用文本审核方式。