SDK 文档

服务端 API

群组相关问题

最近更新时间:2020-06-11 18:07:30

在群聊中如何对群成员设置或取消禁言?

禁言是控制群成员发送消息的方式之一,被禁言成员的禁言时间内无法在该群发送消息。详细设置文档可参阅以下 SDK 文档:

另外 App 管理员也可通过 REST API 对任意群的任意成员设置禁言,详细请参阅 REST API:批量禁言和取消禁言

如何查看被禁言的成员及禁言时间?

管理员和群主可以通过 IM SDK 提供的接口对成员设置或取消禁言(取消禁言只需要把禁言时间设置为 0 即可)。
查询成员禁言信息,是通过查询群成员资料来实现的。详细设置文档可参阅以下 SDK 文档:

另外 App 管理员也可通过 REST API 查询成员禁言信息,详细请参阅 REST API:获取群组被禁言用户列表

如何查看入群前的消息?

可以查看入群前消息的前提是该群类型历史消息必须支持云端存储,根据群类型及设定的使用场景,我们做了如下配置:

  • 直播群(AVChatRoom) 以及老版本中的 在线成员广播大群(BChatRoom) 不支持历史消息存储,所以这两种群组无法支持查看入群前消息。
  • 非直播群中,好友工作群(Work)陌生人社交群(Public) ,默认不允许查看入群前消息;临时会议群(Meeting) ,默认允许群成员可以查看入群之前的历史消息。如需修改默认配置,可以 提交工单 申请修改。

非直播群历史消息存储时长默认为7天(旗舰版默认存储30天),如需延长历史消息存储时长可在 控制台 >【功能配置】中进行配置,延长历史消息存储时长是付费增值服务,具体计费说明请参考 价格说明

AVChatRoom 和 Meeting(老版本中的 ChatRoom 类型) 有什么区别?

这两种群组分别面向不同的应用场景:Meeting 适用于群组规模中等(6000人以下规模)的场景;AVChatRoom 是适用于大型直播场景,成员人数不受上限。因而这两种群组,在功能设计上有些不同,主要不同有:

群功能项 Meeting AVChatRoom
群成员上限 6000人 无上限
群成员信息 保存全部群成员信息 只保存300个成员的信息
是否支持群主设置群管理员 支持 不支持
删除群成员 群管理员、群主和 App 管理员可以删除群成员 不支持
是否支持消息漫游 支持 不支持
是否支持入群前历史消息 默认支持查看历史消息存储有效期内的消息 不支持
是否支持成员变更通知 不支持 支持
是否支持 App 管理员导入群组 支持 不支持

为什么获取不到群/群成员维度自定义字段值?

对于该问题,可以从以下方面排查:

  1. 通过控制台查看自定义字段的配置是否正确。
  2. 确认查询请求中:请求用户是否有读取权限,群组类型是否支持该自定义字段。
  3. 确认该自定义字段的设置请求是否成功。
  4. 对于群维度的自定义字段:
    • iOS:需要在登录 IM SDK 之前,通过 TIMManager > setUserConfig > TIMUserConfig > TIMGroupInfoOption > groupCustom 进行相应的配置。
    • Android:需要在登录 IM SDK 之前,通过 TIMManager > setUserConfig > TIMUserConfig > TIMGroupSettings > groupInfoOptions > setCustomTags 进行相应的配置。
  5. 对于群成员维度的自定义字段:
    • iOS:需要在登录 IM SDK 之前,通过 TIMManager > setUserConfig > TIMUserConfig > TIMGroupMemberInfoOption > memberCustom 进行相应的配置。
    • Android:需要在登录 IM SDK 之前,通过 TIMManager > setUserConfig > TIMUserConfig > TIMGroupSettings > memberInfoOptions > setCustomTags 进行相应的配置。
目录