群事件
进行会话相应操作、群聊成员变更后,系统将会下发相应的事件结果,你可以注册相关代理来监听群事件。
监听群事件
接口定义
kotlin
//添加监听器
fun addChatEventListener(
owner: LifecycleOwner?,
listener: KIMGroupEventListener<out KIMCoreEventResult>
)
//移除监听器
fun removeChatEventListener(listener: KIMGroupEventListener<out KIMCoreEventResult>)
参数说明
参数 | 类型 | 说明 |
---|---|---|
listener | KIMGroupEventListener | 监听器,每种不同的事件对应不同的子类 |
KIMGroupEventListener
方法说明
方法 | 参数 | 返回值 | 说明 |
---|---|---|---|
process | <T extends KIMCoreEventResult> result | 监听回调 |
KIMCoreEventResult
,每种不同的事件对应不同的子类,以下是基本参数
参数 | 类型 | 说明 |
---|---|---|
allUserId | List<String> | 涉及到的所有用户id |
chatId | String | 会话id |
代码示例
kotlin
KIMCore.instance().addChatEventListener(lifecycleOwner, object : KIMCoreXXXXListener {
override fun process(result: KIMCoreXXXXResult) {
TODO()
}
})
事件说明
入群退群相关
解散群聊事件
接口定义
kotlin
val listener = object : KIMCoreGroupDisbandListener {
override fun process(result: KIMCoreGroupDisbandResult) {
}
KIMCoreGroupDisbandResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 id |
被踢出事件
代码示例
kotlin
val listener = object : KIMCoreGroupMemberKickedListener{
override fun process(result: KIMCoreGroupMemberKickedResult) {
result.meIsKicked()
}
}
退出群聊事件
代码示例
kotlin
val listener = object : KIMCoreGroupMemberLeaveListener {
override fun process(result: KIMCoreGroupMemberLeaveResult) {
}
}
群成员相关
邀请入群事件
接口定义
kotlin
val listener = object : KIMCoreGroupMemberEnterListener {
override fun process(result: KIMCoreGroupMemberEnterResult) {
}
}
KIMCoreGroupMemberEnterResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 id |
userList | list String | 入群的用户 id |
被踢出事件
接口定义
kotlin
val listener = object : KIMCoreGroupMemberKickedListener {
override fun process(result: KIMCoreGroupMemberKickedResult) {
}
}
KIMCoreGroupMemberKickedResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 id |
operator | String | 踢人的用户 id,如果为空,表示用户本人被踢 |
targetList | list String | 被踢的用户 id,如果为空,表示用户本人被踢 |
退出群聊事件
接口定义
kotlin
val listener = object : KIMCoreGroupMemberLeaveListener {
override fun process(result: KIMCoreGroupMemberLeaveResult) {
}
}
KIMCoreGroupMemberLeaveResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 id |
targetList | List String | 退群用户的 id |
角色变动事件
接口定义
kotlin
val listener = object : KIMCoreGroupMemberRoleOptListener {
override fun process(result: KIMCoreGroupMemberRoleOptResult) {
}
}
KIMCoreGroupMemberRoleOptResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 ID |
action | String | 类型 Constant.ChatRoleOpt |
operatorId | String | 操作者userId |
Constant.ChatRoleOpt
类型 | 说明 |
---|---|
TRANSFER_OWNER | 转让群主 |
SET_ADMIN | 设置管理员 |
DEL_ADMIN | 取消管理员 |
群设置相关
群聊重命名事件
接口定义
kotlin
val listener = object : KIMCoreGroupInfoChangedListener {
override fun process(result: KIMCoreGroupInfoChangedResult) {
}
}
KIMCoreGroupInfoChangedResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 ID |
operator | String | 修改群名用户的 id |
newName | String | 新的群名 |
群成员禁言事件
接口定义
kotlin
val listener = object : KIMCoreGroupDisableListener {
override fun process(result: KIMCoreGroupDisableResult) {
}
}
KIMCoreGroupDisableResult
参数 | 类型 | 说明 |
---|---|---|
chatId | String | 群组 ID |
action | String | 类型 Constant.ChatDisable |
disableUserList | List<String> | 被禁言的用户列表 当 Constant.ChatDisable#ACTION_DISABLE_PART 时,才有效果 |
enableUserList | List<String> | 开启发言的用户列表 当 Constant.ChatDisable#ACTION_DISABLE_PART 时,才有效果 |
Constant.ChatDisable
类型 | 说明 |
---|---|
ACTION_DISABLE_ALL | 全员禁言 |
ACTION_ENABLE_ALL | 全员可以发言 |
ACTION_DISABLE_PART | 部分禁言 |
ACTION_NOTIFY | 通知更新具体人员的禁言状态 |