查询聊天室房间信息
获取聊天室的信息,可返回以下数据:
- 聊天室成员总数
- 指定数量(最多 20 个)的聊天室成员的列表,包括该成员的用户 ID 以及加入聊天室的时间
提示
频率限制:单个设备每秒钟支持调用一次,每分钟单个设备最多调用 20 次。
您可以使用 RCIMClient
或 RCChatRoomClient
下的 getChatRoomInfo
方法:
[[RCIMClient sharedRCIMClient] getChatRoomInfo:@"chatroomId"
count:0
order:RC_ChatRoom_Member_Asc
success:^(RCChatRoomInfo *chatRoomInfo) {
// Get ChatRoomInfo properties
NSString *targetId = chatRoomInfo.targetId;
int totalMemberCount = chatRoomInfo.totalMemberCount;
NSArray<RCChatRoomMemberInfo *> *memberInfoArray = chatRoomInfo.memberInfoArray;
// Get ChatRoomMemberInfo properties
for (RCChatRoomMemberInfo *memberInfo in memberInfoArray) {
NSString *userId = memberInfo.userId;
long long joinTime = memberInfo.joinTime;
// TODO
}
}
error:^(RCErrorCode status) {
// Handle error
}];
参数 | 类型 | 说明 |
---|---|---|
targetId | NSString | 聊天室 ID。有效值最大长度为 64 个字符。 |
count | int | 需要获取的聊天室成员数量。范围 0-20。因为聊天室一般成员数量巨大,权衡效率和用户体验,获取的聊天室成员数上限为 20。如果 count 为 0,则返回的聊天室信息仅包含成员总数,不包含具体的成员列表。 |
order | RCChatRoomMemberOrder | 需要获取的成员列表的顺序(最早加入或是最晚加入的部分成员)。 RC_ChatRoom_Member_Asc (1 ) 表示升序,从最早加入聊天室成员开始,按加入时间递增的顺序获取成员列表;RC_ChatRoom_Member_Desc (2 )表示降序,从最晚加入聊天室成员开始,按加入时间递减的顺序获取成员列表。 |
successBlock | Block | 获取成功的回调。返回 RCChatRoomInfo,其中包含按要求获取的聊天室成员列表结果。详见下方 RCChatRoomInfo 类说明。 |
errorBlock | Block | 获取失败的回调。 status 中返回错误码 RCErrorCode。 |
-
RCChatRoomInfo 类说明:
参数 类型 说明 targetId NSString 聊天室信息 memberOrder RCChatRoomMemberOrder 获取的成员列表的顺序 memberInfoArray NSArray 聊天室成员列表,数组元素为聊天室成员对象 RCChatRoomMemberInfo,内部包含用户 ID( userId
)和Unix 时间戳格式的加入时间(joinTime
),单位为毫秒。 列表中的成员按加入时间从旧到新排列。totalMemberCount int 当前聊天室的成员总数