searchGroups
功能介绍
说明
通过关键词搜索已加入的群组。
注意
(1)至少需指定一个搜索域;
(2)多个域之间是或的关系。
- iOS
- Android
- Flutter
- uni-app
- Browser/Electron/MiniProgram
- React-Native
- Unity
函数原型
Future<List<GroupInfo>> searchGroups({
List<String> keywordList = const [],
bool isSearchGroupID = false,
bool isSearchGroupName = false,
String? operationID,
})
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
keywordList | List<String> | 是 | 搜索关键词,目前仅支持一个关键词搜索,不能为空 |
isSearchGroupID | bool | 是 | 是否以关键词搜索群ID |
isSearchGroupName | bool | 是 | 是否以关键词搜索群名字 |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
~ | List<GroupInfo> | 成功返回 |
代码示例
List<GroupInfo> list = await OpenIM.iMManager.groupManager.searchGroups(
keywordList: ['ok'],
isSearchGroupID: true,
isSearchGroupName: true,
);
// todo
函数原型
- (void)searchGroups:(OIMSearchGroupParam *)searchParam
onSuccess:(nullable OIMGroupsInfoCallback)onSuccess
onFailure:(nullable OIMFailureCallback)onFailure;
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
OIMSearchGroupParam.keywordList | NSArray< NSString *> | 是 | 搜索关键词,目前仅支持一个关键词搜索,不能为空 |
OIMSearchGroupParam.isSearchGroupID | BOOL | 否 | 是否以关键词搜索群ID(注:两个不可以同时为 false),默认 false |
OIMSearchGroupParam.isSearchGroupName | BOOL | 否 | 是否以关键词搜索群名字,默认 false |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
onSuccess | NSArray< OIMGroupInfo *> | 成功返回 |
onFailure | OIMFailureCallback | 失败返回 |
代码示例
OIMSearchGroupParam *param = [OIMSearchGroupParam new];
param.isSearchGroupName = YES;
param.keywordList = @[];
[OIMManager.manager searchGroups:param
onSuccess:^(NSArray<OIMGroupInfo *> * _Nullable groupsInfo) {
} onFailure:^(NSInteger code, NSString * _Nullable msg) {
}];
函数原型
public void searchGroups(OnBase<List<GroupInfo>> callBack, List<String> keywordList, boolean isSearchGroupID, boolean isSearchGroupName)
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
callBack | OnBase<List<GroupInfo>> | 是 | 回调接口 |
keywordList | List<String> | 是 | 关键字 |
isSearchGroupID | Boolean | 是 | 检索群ID |
isSearchGroupName | Boolean | 是 | 检索群昵称 |
返回结果
代码示例
OpenIMClient.getInstance().groupManager.searchGroups(new OnBase<List<GroupInfo>>() {
@Override
public void onError(int code, String error) {
}
@Override
public void onSuccess(List<GroupInfo> data) {
}
}, keywordList, isSearchGroupID, isSearchGroupName);
函数原型
IMSDK.searchGroups({
keywordList: string[];
isSearchGroupID: boolean;
isSearchGroupName: boolean;
}, operationID?: string): Promise<WsResponse<GroupItem[]>>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
keywordList | string[] | 是 | 搜索关键词,目前仅支持一个关键词搜索,不能为空 |
isSearchGroupID | boolean | 是 | 是否以关键词搜索群ID |
isSearchGroupName | boolean | 是 | 是否以关键词搜索群名称 |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<WsResponse<GroupItem[]>> | 搜索到的好友信息列表 |
Promise.catch() | Promise<WsResponse> | 调用失败回调 |
代码示例
import { getSDK } from '@openim/wasm-client-sdk';
const IMSDK = getSDK();
// use in electron with ffi
// import { getWithRenderProcess } from '@openim/electron-client-sdk/lib/render';
// const { instance: IMSDK } = getWithRenderProcess();
// use in mini program
// import { OpenIMSDK } from 'open-im-sdk';
// const IMSDK = new OpenIMSDK();
IMSDK.searchGroups({
keywordList: ['nickname'];
isSearchGroupID: false,
isSearchGroupName: true,
})
.then(({data}) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
IMSDK.asyncApi('searchGroups', operationID: string, {
keywordList: string[];
isSearchGroupID: boolean;
isSearchGroupName: boolean;
}): Promise<GroupItem[]>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 |
keywordList | string[] | 是 | 搜索关键词,目前仅支持一个关键词搜索,不能为空 |
isSearchGroupID | boolean | 是 | 是否以关键词搜索群ID |
isSearchGroupName | boolean | 是 | 是否以关键词搜索群名称 |
返回结果
通过
openim-uniapp-polyfill
包将函数 Promise 化,调用时需要使用then
和catch
判断并处理成功和失败回调。
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<GroupItem[]> | 搜索到的好友信息列表 |
Promise.catch() | Promise<CatchResponse> | 调用失败回调 |
代码示例
import IMSDK from 'openim-uniapp-polyfill';
IMSDK.asyncApi('searchGroups', IMSDK.uuid(), {
keywordList: ['nickname'];
isSearchUserID: false,
isSearchNickname: true,
isSearchRemark: true,
})
.then((data) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
OpenIMSDKRN.searchGroups({
keywordList: string[];
isSearchGroupID: boolean;
isSearchGroupName: boolean;
}, operationID: string): Promise<GroupItem[]>
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
keywordList | string[] | 是 | 搜索关键词,目前仅支持一个关键词搜索,不能为空 |
isSearchGroupID | boolean | 是 | 是否以关键词搜索群ID |
isSearchGroupName | boolean | 是 | 是否以关键词搜索群名称 |
operationID | string | 是 | 操作 ID,用于定位问题,保持唯一,建议用当前时间和随机数 |
返回结果
参数名称 | 参数类型 | 描述 |
---|---|---|
Promise.then() | Promise<GroupItem[]> | 搜索到的群信息列表 |
Promise.catch() | Promise<CatchResponse> | 调用失败回调 |
代码示例
import OpenIMSDKRN from "open-im-sdk-rn";
OpenIMSDKRN.searchGroups({
keywordList: ['nickname'];
isSearchUserID: false,
isSearchNickname: true,
isSearchRemark: true,
}, 'operationID')
.then((data) => {
// 调用成功
})
.catch(({ errCode, errMsg }) => {
// 调用失败
});
函数原型
public static void SearchGroups(OnBase<List<GroupInfo>> cb, SearchGroupsParam searchParam)
输入参数
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
cb | OnBase<List<GroupInfo>> | 是 | 回调 |
searchParam | SearchGroupsParam | 是 | 搜索参数 |
返回结果
代码示例
IMSDK.SearchGroups((list,errCode,errMsg)=>{
},new SearchGroupsParam(){
KeywordList = {},
IsSearchGroupID = true,
IsSearchGroupName = false
} );