一、在群聊中如何对群成员设置或取消禁言?
·Android 对群成员进行禁言
·iOS 对群成员进行禁言
·Web 对群成员禁言
另外 App 管理员也可通过 REST API 对任意群的任意成员设置禁言,详细请参阅 REST API:批量禁言和取消禁言。
二、如何查看被禁言的成员及禁言时间?
管理员和群主可以通过 IM SDK 提供的接口对成员设置或取消禁言(取消禁言只需要把禁言时间设置为 0 即可)。
查询成员禁言信息,是通过查询群成员资料来实现的。详细设置文档可参阅以下 SDK 文档:
·Android 获取群成员资料
·iOS 获取群成员资料
·Web 获取群成员列表
另外 App 管理员也可通过 REST API 查询成员禁言信息,详细请参阅 REST API:获取群组被禁言用户列表。
三、如何查看入群前的漫游消息?
可以查看入群前的漫游消息的前提是该群类型历史消息必须支持云端存储,根据群类型及设定的使用场景,我们做了如下配置:
·直播群(AVChatRoom)以及老版本中的在线成员广播大群(BChatRoom)不支持历史消息存储,所以这两种群组无法支持查看入群前的漫游消息。
·非直播群中,好友工作群(Work) 和 陌生人社交群(Public) ,默认不允许查看入群前的漫游消息;临时会议群(Meeting)和 社群(Community),默认允许群成员可以查看入群前的漫游消息。如需修改默认配置,可以在即时通信 IM 控制台,左侧导航栏选择消息服务 Chat > 功能配置 > 群组配置 > 群消息配置中进行修改。
非直播群历史消息存储时长默认为7天(旗舰版默认存储30天),如需延长历史消息存储时长可在 控制台 > 功能配置 中进行配置,延长历史消息存储时长是付费增值服务,具体计费说明请参考 价格说明。
四、AVChatRoom 和 Meeting(老版本中的 ChatRoom 类型) 有什么区别?
这两种群组分别面向不同的应用场景:Meeting 适用于群组规模中等(6000人以下规模)的场景;AVChatRoom 是适用于大型直播场景,成员人数不受上限。因而这两种群组,在功能设计上有些不同,主要差异点如下表所示:
| 群功能项 | Meeting | AVChatRoom |
| 群成员上限 | 6000人 | 无上限 |
| 群成员信息 | 保存全部群成员信息 | 不存储成员信息 |
| 是否支持群主设置群管理员 | 支持 | 不支持 |
| 删除群成员 | 群管理员、群主和 App 管理员可以删除群成员 | 不支持 |
| 是否支持消息漫游 | 支持 | 不支持 |
| 是否支持入群前历史消息 | 默认支持查看历史消息存储有效期内的消息 | 不支持 |
| 是否支持成员变更通知 | 不支持 | 支持 |
| 是否支持 App 管理员导入群组 | 支持 | 不支持 |
五、如何获取直播群的在线人数?
AVChatRoom 在线人数,可以通过 SDK 接口(Android、iOS、Web、Flutter)或者 REST API 接口获取。
六、群消息限制40条/秒,没有相关提示说明,如何来判断是否超了40条/秒的限制呢?
超过频控后,默认不会返回限频错误码给到调用方,如果需要该错误码(10023)返回给调用方,请提 配置变更需求工单 给到平台。
七、如何设置不接收群 tips 消息/通知(例如:进群通知、群资料变更等)?
即时通信 IM 控制台,左侧导航栏选择消息服务 Chat > 功能配置 > 群组配置 > 群系统通知配置,选择需配置内容,在相应群组类型的操作列单击编辑,选择下发通知/不存漫游。
每个操作详细解释如下:
·关闭:关闭之后,终端不会收到的通知,会导致无法更新群变更相关信息,也不会通过 V2TIMGroupListener 回调通知。
·下发通知/存漫游:终端收到通知,然后更新群变更相关信息,并通过 V2TIMGroupListener 回调出来。同时群内也会收到 onRecvNewMessage 每个信息变更的通知(如进群通知和群资料变更消息等),也能通过 getHistoryMessageList 拉取到该通知消息。
·下发通知/不存漫游:终端收到通知,然后更新群变更相关信息,并通过 V2TIMGroupListener 回调出来。但是群内不会收到 onRecvNewMessage 任何信息变更的通知,也无法通过getHistoryMessageList 拉取到该通知消息。(一般用于接收并更新群资料变更,但是不想接收群内消息提醒,如进群通知和群资料变更等消息。)
八、请问打开一个群聊界面,如何更合适的知道群聊是否已经解散?
调用 getGroupMemberList 只获取群主的资料,如果报错了,说明已经不在群内或群已解散,不在群内和群已解散对应的错误码不同。
·不在群内会报:10007。
·群已解散会报:10010 或 10015。
九、群主开启“全员禁言”生效后,群内其他成员获取“全员禁言状态”未更新?
全员禁言的通知,默认关闭,需要在 IM 控制台 开启,对应如下截图位置:
十、拉人进群或者成员主动退群,群内都会产生一条对应的通知消息以及增加一条未读数,想实现此类通知消息不显示,以及不产生未读数,怎么处理?
可在 IM 控制台 配置群成员变更通知,将下发/存漫游改成下发/不存漫游。
十一、为什么群管理员无法显示群管理页面进行禁言等操作?
版本遗留逻辑默认只有群主控制,可以通过修改源码让管理员显示。
十二、直播群用户直接杀了 App 或者退出 App,会有 onMemberLeave 回调吗?
直播群用户只有正常退群其他群成员才能收到 onMemberLeave 回调,直接杀了 App 或者退出 App 其他群成员收不到 onMemberLeave 回调。
这种情况下,其他群成员想获取群成员在线列表,可参考 拉取群成员列表。