超级群禁言服务概述
即时通讯服务提供超级群禁言服务,具体提供以下功能:
- 超级群单人禁言:单人禁言服务支持在超级群(或频道)范围内禁言指定用户,或在指定用户加入的所有超级群中将其禁言。
- 超级群全体成员禁言:设置指定的超级群(或频道)为全体禁言状态。
- 超级群全体禁言白名单:在对 App 下的超级群或指定频道设置全体禁言后,可能还需要允许部分用户往群组或频道中发送消息。较简单的实现方式是设置对应级别的白名单。
禁言效果说明
禁言服务仅影响从客户端发送消息的行为。
- 如果用户被单人禁言,则无法通过客户端 SDK 往该群组中发消息。
- 如果用户所在群组、频道被全体禁言,则不可通过客户端 SDK 往该超级群(或频道)中发消息。
- 在设置禁言服务后,如需允许部分用户往群组或频道中发送消息,可以使用超级群全体禁言白名单服务。请注意,较简单的实现方式是设置对应级别(群或频道)的白名单。如果混用超级群、超级群频道级别的全体禁言与白名单,请参见下方说明。
服务端(Server API)发送群聊消息接口不受群组全体成员禁言状态的限制,被禁言用户可通过 Server API 往该群组中发送消息。
混用不同级别的禁言与禁言白名单服务
超级群业务提供超级群级别和频道级别的全体禁言白名单服务。如果您的 App 业务同时使用了超级群单人禁言功能(在群范围或频道范围禁言指定成员),具体行为如下:
如果单人禁言范围与白名单生效的范围一致(同为群或频道)时,白名单优先生效。参见以下场景描述:
- 情况 1:设置用户在超级群中单人禁言,如用户在全体禁言白名单中,可正常发送消息。
- 情况 2:设置用户在超级群频道中单人禁言,如用户在频道的全体禁言白名单中,可正常发送消息。
如果单人禁言的范围与白名单生效的范围不一致时,超级群级别的禁言或白名单设置具有更高优先级:
- 情况 3:设置用户在超级群中禁言,如用户仅在频道的白名单中,则不可发送消息。
- 情况 4:设置用户在超级群频道中禁言,如用户已在超级群的全体禁言白名单中,则仍可正常发送消息。
关于超级群禁言服务行为变更的说明
本节内容仅适用于在 2022.10.13 日前已开通超级群服务的客户。
如果您的应用/环境在 2022.10.13 日前已开通超级群服务,超级群级别的单人禁言、全体禁言、全体禁言白名单设置仅可控制发送不属于任何频道(指发消息时不携带频道 ID)的超级群消息的行为。
例如,该客户使用超级群全体成员禁言白名单接口将 App 用户加入超级群(groupId
)级别的白名单后,白名单用户可发送不属于任何频道的消息( 发送消息时未指定频道 ID),仍禁止往任何群频道中发送消息。如需要允许用户往群及任何频道中发送消息,请遍历所有超级群下所有频道,并将该用户加入频道的白名单。
即时通讯服务在 2022.10.13 对超级群禁言服务的行为进行了调整,实现一次调用即可对指定超级群下所有频道进行禁言、白名单设置。如果您的应用/环境在 2022.10.13 日及以后开通超级群服务,超级群业务中会包含一个 ID 为 RCDefault
的默认频道,且群级别的禁言相关服务设置会自动适用于所有频道。
即时通讯服务支持客户调整服务至最新行为。该行为调整将影响客户端、服务端收发消息、获取会话、清除历史消息、禁言等多个功能。如有需要,请提交工单咨询详细方案。