群查询
本文档旨在指导开发者如何使用融云即时通讯 IMLib SDK 实现获取本人已加入的群组、获取指定群组资料等功能。
提示
此功能在 5.12.0 版本开始支持。
开通服务
使用此功能前,您须在控制台开通信息托管服务。
群查询
获取群组资料
您可以调用 getGroupsInfo
方法获取群组资料。
- 该方法优先本地查找,当用户不在群组中时,本地不存在或者本地群组信息缓存超过 10 分钟的才会从服务端拉取最新的群组信息。
- 单次调用最多支持获取 20 个群组资料,每秒钟最多查询 5 次。
接口原型
objc
- (void)getGroupsInfo:(NSArray<NSString *> *)groupIds
success:(void (^)(NSArray<RCGroupInfo *> *groupInfos))successBlock
error:(void (^)(RCErrorCode errorCode))errorBlock;
参数说明
参数 | 类型 | 描述 |
---|---|---|
groupIds | NSArray | 需要查询的群组 targetId 列表,单次调用最多支持获取 20 个群组资料。 |
successBlock | Block | 查询成功回调,返回对应的群组信息 RCGroupInfo 数组。 |
errorBlock | Block | 查询失败回调 |
示例代码
objc
[[RCCoreClient sharedCoreClient] getGroupsInfo:@[@"groupId1", @"groupId2"]
success:^(NSArray<RCGroupInfo *> * _Nonnull groupInfos) {
// 获取成功
}
error:^(RCErrorCode errorCode) {
// 获取失败
}
];
获取指定已加入群组的资料
您可以使用 getJoinedGroups
根据当前用户已加入的群组 ID 获取群组资料。
该接口支持批量获取,您可以一次传入多个 groupId
获取多个群组资料,最多不超过 20 个。
接口原型
objc
- (void)getJoinedGroups:(NSArray<NSString *> *)groupIds
success:(void (^)(NSArray<RCGroupInfo *> *groupInfos))successBlock
error:(void (^)(RCErrorCode errorCode))errorBlock;
参数说明
参数 | 类型 | 描述 |
---|---|---|
groupIds | NSArray | 需要查询的群组 targetId 列表,单次调用最多支持获取 20 个群组资料。 |
successBlock | Block | 查询成功回调,返回对应的群组信息 RCGroupInfo 数组。 |
errorBlock | Block | 查询失败回调。 |
示例代码
objc
// 已加入的群组 ID
NSArray *groupIds = @[@"groupId1", @"groupId2"];
// 获取已加入的群组
[[RCCoreClient sharedCoreClient] getJoinedGroups:groupIds success:^(NSArray<RCGroupInfo *> * _Nonnull groupInfos) {
// 获取成功
} error:^(RCErrorCode errorCode) {
// 获取失败
}];
按角色获取已加入群组的资料
您可以使用 getJoinedGroupsByRole
按群成员角色分页获取已加入的群组。
此接口成功回调中的 result
会返回满足查询条件的群组总数。