在群聊中如何对群成员设置或取消禁言?
禁言是控制群成员发送消息的方式之一,被禁言成员的禁言时间内无法在该群发送消息。详细设置文档可参阅以下 SDK 文档:
如何查看被禁言的成员及禁言时间?
管理员和群主可以通过 IM SDK 提供的接口对成员设置或取消禁言(取消禁言只需要把禁言时间设置为 0 即可)。
查询成员禁言信息,是通过查询群成员资料来实现的。详细设置文档可参阅以下 SDK 文档:
如何查看入群前的漫游消息?
可以查看入群前的漫游消息的前提是该群类型历史消息必须支持云端存储,根据群类型及设定的使用场景,我们做了如下配置:
直播群(AVChatRoom)以及老版本中的在线成员广播大群(BChatRoom)不支持历史消息存储,所以这两种群组无法支持查看入群前的漫游消息。
非直播群中,好友工作群(Work) 和 陌生人社交群(Public) ,默认不允许查看入群前的漫游消息;临时会议群(Meeting)和 社群(Community),默认允许群成员可以查看入群前的漫游消息。如需修改默认配置,可以在即时通信 IM 控制台,左侧导航栏选择消息服务 Chat > 功能配置 > 群组配置 > 群消息配置中进行修改。
AVChatRoom 和 Meeting(老版本中的 ChatRoom 类型) 有什么区别?
这两种群组分别面向不同的应用场景:Meeting 适用于群组规模中等(6000人以下规模)的场景;AVChatRoom 是适用于大型直播场景,成员人数不受上限。因而这两种群组,在功能设计上有些不同,主要差异点如下表所示:
群功能项 | Meeting | AVChatRoom |
群成员上限 | 6000人 | 无上限 |
群成员信息 | 保存全部群成员信息 | 不存储成员信息 |
是否支持群主设置群管理员 | 支持 | 不支持 |
删除群成员 | 群管理员、群主和 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 进行相应的配置。
如何获取直播群的在线人数?
群消息限制40条/秒,没有相关提示说明,如何来判断是否超了40条/秒的限制呢?
如何设置不接收群 tips 消息/通知(例如:进群通知、群资料变更等)?
每个操作详细解释如下:
关闭:关闭之后,终端不会收到的通知,会导致无法更新群变更相关信息,也不会通过 V2TIMGroupListener 回调通知。
下发通知/存漫游:终端收到通知,然后更新群变更相关信息,并通过 V2TIMGroupListener 回调出来。同时群内也会收到 onRecvNewMessage 每个信息变更的通知(如进群通知和群资料变更消息等),也能通过 getHistoryMessageList 拉取到该通知消息。
下发通知/不存漫游:终端收到通知,然后更新群变更相关信息,并通过 V2TIMGroupListener 回调出来。但是群内不会收到 onRecvNewMessage 任何信息变更的通知,也无法通过getHistoryMessageList 拉取到该通知消息。(一般用于接收并更新群资料变更,但是不想接收群内消息提醒,如进群通知和群资料变更等消息。)

请问打开一个群聊界面,如何更合适的知道群聊是否已经解散?
调用
getGroupMemberList
只获取群主的资料,如果报错了,说明已经不在群内或群已解散,不在群内和群已解散对应的错误码不同。不在群内会报:10007。
群已解散会报:10010 或 10015。
群主开启“全员禁言”生效后,群内其他成员获取“全员禁言状态”未更新?


拉人进群或者成员主动退群,群内都会产生一条对应的通知消息以及增加一条未读数,想实现此类通知消息不显示,以及不产生未读数,怎么处理?


为什么群管理员无法显示群管理页面进行禁言等操作?
版本遗留逻辑默认只有群主控制,可以通过修改源码让管理员显示。


直播群用户直接杀了 App 或者退出 App,会有 onMemberLeave
回调吗?
直播群用户只有正常退群其他群成员才能收到
onMemberLeave
回调,直接杀了 App 或者退出 App 其他群成员收不到 onMemberLeave
回调。