房间成员管理
更新时间:
本文主要介绍 云上曲率即时通讯IM SDK的房间成员管理功能。
功能描述
房间成员管理指处理房间内成员的一些管理操作,包括房间成员列表、房主转让、管理员授权等内容。由于房间成员管理涉及房间角色功能的参与,因此开发者在使用过程中请注意赋予用户的角色情况。
云上曲率IM SDK为开发者提供如下房间成员管理内容:
- 获取房间成员列表
- 获取房间成员数量
- 房主转让
- 管理员授权
注意:如果出现房主、管理员掉线情况,重新登录加入房间后,房主、管理员的角色依然不变。
接口说明
房间事件变更通知
房间成员管理功能中,当出现房主变更、房间管理员授权时,会接收到服务端的通知PUSH。
获取房间成员列表
房间成员可以使用getRoomMembers
接口获取所在房间的成员情况,包括成员数量、成员角色等。
接口参数说明:
参数
含义
说明
roomId
房间ID
获取房间成员请求的房间ID
timeout
超时时间
请求的超时时间,单位为秒
代码示例
-(void)getRoomMembers:(NSNumber * _Nonnull)roomId
timeout:(int)timeout
success:(void(^)(NSArray <IMRoomMemberInfo*> * array))successCallback
fail:(IMAnswerFailCallBack)failCallback;
获取房间成员数量
未加入房间的用户可以使用getRoomMembersCount
接口获取房间的成员数量。
接口参数说明:
参数
含义
说明
roomId
房间ID
获取房间成员数量的房间ID
timeout
超时时间
请求的超时时间,单位为秒
代码示例
-(void)getRoomMemberCount:(NSNumber * _Nonnull)roomId
timeout:(int)timeout
success:(void(^)(IMMemberCountAnswer * _Nullable memberCountAnswer))successCallback
fail:(IMAnswerFailCallBack)failCallback;
房主转让
房主可以使用transferRoom
接口将所在房间的房主角色转让给当前房间内其他成员。
房主角色转让成功后,原房主角色变为普通成员,对应的功能权限也变更。房间其他成员收到由服务端推送的 房主转让 通知。
接口参数说明:
参数
含义
说明
roomId
房间ID
发起转让房间请求的房间ID
toUid
用户ID
将房主身份转移给其他用户ID
timeout
超时时间
请求的超时时间,单位为秒
代码示例
-(void)transferRoom:(NSNumber * _Nonnull)roomId
toUid:(int64_t)toUid
timeout:(int)timeout
success:(void(^)(void))successCallback
fail:(IMAnswerFailCallBack)failCallback;
管理员授权
房主 可以对房间内成员进行角色配置,赋予管理员权限。管理员的权限包括:
- 移除房间内成员
注意:房间管理员无法对房间普通成员授权,也无法删除其他管理员。
新增管理员
房主 可以使用addRoomManagers
将房间 普通成员 设置为 管理员 角色。完成后,房间其他成员收到由服务端推送的 新增管理员 通知。
接口参数说明:
参数
含义
说明
roomId
房间ID
新增管理员的房间ID
uids
用户ID
赋予管理员角色的用户ID
timeout
超时时间
请求的超时时间,单位为秒
代码示例
-(void)addRoomManagers:(NSNumber * _Nonnull)roomId
uids:(NSArray <NSNumber*>*)uids
timeout:(int)timeout
success:(void(^)(void))successCallback
fail:(IMAnswerFailCallBack)failCallback;
删除管理员
房主 可以使用removeRoomManagers
将房间 管理员 设置为 普通成员 角色。完成后,房间其他成员收到由服务端推送的 删除管理员 通知。
接口参数说明:
参数
含义
说明
roomId
房间ID
删除管理员的房间ID
uids
用户ID
移除管理员角色的用户ID
timeout
超时时间
请求的超时时间,单位为秒
代码示例
-(void)removeRoomManagers:(NSNumber * _Nonnull)roomId
uids:(NSArray <NSNumber*>*)uids
timeout:(int)timeout
success:(void(^)(void))successCallback
fail:(IMAnswerFailCallBack)failCallback;
本文主要介绍 云上曲率即时通讯IM SDK的房间成员管理功能。
功能描述
房间成员管理指处理房间内成员的一些管理操作,包括房间成员列表、房主转让、管理员授权等内容。由于房间成员管理涉及房间角色功能的参与,因此开发者在使用过程中请注意赋予用户的角色情况。
云上曲率IM SDK为开发者提供如下房间成员管理内容:
- 获取房间成员列表
- 获取房间成员数量
- 房主转让
- 管理员授权
注意:如果出现房主、管理员掉线情况,重新登录加入房间后,房主、管理员的角色依然不变。
接口说明
房间事件变更通知
房间成员管理功能中,当出现房主变更、房间管理员授权时,会接收到服务端的通知PUSH。
获取房间成员列表
房间成员可以使用getRoomMembers
接口获取所在房间的成员情况,包括成员数量、成员角色等。
接口参数说明:
参数 | 含义 | 说明 |
---|---|---|
roomId | 房间ID | 获取房间成员请求的房间ID |
timeout | 超时时间 | 请求的超时时间,单位为秒 |
代码示例
-(void)getRoomMembers:(NSNumber * _Nonnull)roomId
timeout:(int)timeout
success:(void(^)(NSArray <IMRoomMemberInfo*> * array))successCallback
fail:(IMAnswerFailCallBack)failCallback;
获取房间成员数量
未加入房间的用户可以使用getRoomMembersCount
接口获取房间的成员数量。
接口参数说明:
参数 | 含义 | 说明 |
---|---|---|
roomId | 房间ID | 获取房间成员数量的房间ID |
timeout | 超时时间 | 请求的超时时间,单位为秒 |
代码示例
-(void)getRoomMemberCount:(NSNumber * _Nonnull)roomId
timeout:(int)timeout
success:(void(^)(IMMemberCountAnswer * _Nullable memberCountAnswer))successCallback
fail:(IMAnswerFailCallBack)failCallback;
房主转让
房主可以使用transferRoom
接口将所在房间的房主角色转让给当前房间内其他成员。
房主角色转让成功后,原房主角色变为普通成员,对应的功能权限也变更。房间其他成员收到由服务端推送的 房主转让 通知。
接口参数说明:
参数 | 含义 | 说明 |
---|---|---|
roomId | 房间ID | 发起转让房间请求的房间ID |
toUid | 用户ID | 将房主身份转移给其他用户ID |
timeout | 超时时间 | 请求的超时时间,单位为秒 |
代码示例
-(void)transferRoom:(NSNumber * _Nonnull)roomId
toUid:(int64_t)toUid
timeout:(int)timeout
success:(void(^)(void))successCallback
fail:(IMAnswerFailCallBack)failCallback;
管理员授权
房主 可以对房间内成员进行角色配置,赋予管理员权限。管理员的权限包括:
- 移除房间内成员
注意:房间管理员无法对房间普通成员授权,也无法删除其他管理员。
新增管理员
房主 可以使用addRoomManagers
将房间 普通成员 设置为 管理员 角色。完成后,房间其他成员收到由服务端推送的 新增管理员 通知。
接口参数说明:
参数 | 含义 | 说明 |
---|---|---|
roomId | 房间ID | 新增管理员的房间ID |
uids | 用户ID | 赋予管理员角色的用户ID |
timeout | 超时时间 | 请求的超时时间,单位为秒 |
代码示例
-(void)addRoomManagers:(NSNumber * _Nonnull)roomId
uids:(NSArray <NSNumber*>*)uids
timeout:(int)timeout
success:(void(^)(void))successCallback
fail:(IMAnswerFailCallBack)failCallback;
删除管理员
房主 可以使用removeRoomManagers
将房间 管理员 设置为 普通成员 角色。完成后,房间其他成员收到由服务端推送的 删除管理员 通知。
接口参数说明:
参数 | 含义 | 说明 |
---|---|---|
roomId | 房间ID | 删除管理员的房间ID |
uids | 用户ID | 移除管理员角色的用户ID |
timeout | 超时时间 | 请求的超时时间,单位为秒 |
代码示例
-(void)removeRoomManagers:(NSNumber * _Nonnull)roomId
uids:(NSArray <NSNumber*>*)uids
timeout:(int)timeout
success:(void(^)(void))successCallback
fail:(IMAnswerFailCallBack)failCallback;