群事件
进行会话相应操作、群聊成员变更后,系统将会下发相应的事件结果,你可以注册相关代理来监听群事件。
监听群事件
接口定义
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 | 通知更新具体人员的禁言状态 |