跳到主要内容

搜索消息

根据关键字搜索

根据关键字搜索指定会话中的消息

方法

TypeScript

searchMessages(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
keyword: string,
startTime: number,
count: number,
callback: IRCIMIWSearchMessagesCallback
): Promise<number>;

参数说明

参数名参数类型描述
typeRCIMIWConversationType会话类型
targetIdstring会话 ID
channelIdstring频道 ID,仅支持超级群使用,其他会话类型传 null 即可。
keywordstring搜索的关键字
startTimenumber查询 beginTime 之前的消息, 传 0 时从最新消息开始搜索,从该时间往前搜索。
countnumber查询的数量,0 < count ≤ 50。
callbackIRCIMIWSearchMessagesCallback接口调用结果回调。

返回值

返回值描述
number当次接口操作的状态码。0 代表接口调用成功,具体业务结果需要从接口回调获取,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

代码示例

TypeScript

const callback = {
onSuccess: (t: Array<RCIMIWMessage>) => {
//...
},
onError: (code: number) => {
//...
},
};
let code = await engine.searchMessages(type, targetId, channelId, keyword, startTime, count, callback);

根据关键字搜索指定会话中某个时间段的消息

方法

TypeScript

searchMessagesByTimeRange(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
keyword: string,
startTime: number,
endTime: number,
offset: number,
count: number,
callback: IRCIMIWSearchMessagesByTimeRangeCallback
): Promise<number>;

参数说明

参数名参数类型描述
typeRCIMIWConversationType会话类型
targetIdstring会话 ID
channelIdstring频道 ID,仅支持超级群使用,其他会话类型传 null 即可。
keywordstring搜索的关键字
startTimenumber开始时间
endTimenumber结束时间
offsetnumber偏移量
countnumber返回的搜索结果数量,0 < count ≤ 50。
callbackIRCIMIWSearchMessagesByTimeRangeCallback接口调用结果回调。

返回值

返回值描述
number当次接口操作的状态码。0 代表接口调用成功,具体业务结果需要从接口回调获取,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

代码示例

TypeScript

const callback = {
onSuccess: (t: Array<RCIMIWMessage>) => {
//...
},
onError: (code: number) => {
//...
},
};
let code = await engine.searchMessagesByTimeRange(
type,
targetId,
channelId,
keyword,
startTime,
endTime,
offset,
count,
callback,
);

根据用户 id 搜索指定会话中的消息

方法

TypeScript

searchMessagesByUserId(
userId: string,
type: RCIMIWConversationType,
targetId: string,
channelId: string,
startTime: number,
count: number,
callback: IRCIMIWSearchMessagesByUserIdCallback
): Promise<number>;

参数说明

参数名参数类型描述
userIdstring用户 id
typeRCIMIWConversationType会话类型
targetIdstring会话 ID
channelIdstring频道 ID,仅支持超级群使用,其他会话类型传 null 即可。
startTimenumber查询记录的起始时间, 传 0 时从最新消息开始搜索,从该时间往前搜索。
countnumber返回的搜索结果数量 0 < count ≤ 50。
callbackIRCIMIWSearchMessagesByUserIdCallback接口调用结果回调。

返回值

返回值描述
number当次接口操作的状态码。0 代表接口调用成功,具体业务结果需要从接口回调获取,非 0 代表当前接口调用操作失败,不会触发接口回调,详细错误参考错误码

代码示例

TypeScript

const callback = {
onSuccess: (t: Array<RCIMIWMessage>) => {
//...
},
onError: (code: number) => {
//...
},
};
let code = await engine.searchMessagesByUserId(userId, type, targetId, channelId, startTime, count, callback);

根据消息类型搜索消息

根据关键字搜索指定会话中指定消息类型的本地历史消息。

方法

TypeScript
searchMessagesByMessageTypes(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
messageTypes: Array<RCIMIWMessageType>,
keyword: string,
startTime: number,
count: number,
callback?: IRCIMIWSearchMessagesByMessageTypesCallback
): Promise<number>;

参数说明

参数名参数类型描述
typeRCIMIWConversationType会话类型
targetIdstring会话 ID
channelIdstring消息所属会话的业务标识,仅支持超级群使用,其他会话类型传 null 即可
messageTypesArray<RCIMIWMessageType>消息类型集合
keywordstring搜索关键字,不能为空
startTimenumber查询此时间戳之前的消息,传 0 表示从最新消息开始搜索,单位为毫秒
countnumber最大查询数量,最大为 100
callbackIRCIMIWSearchMessagesByMessageTypesCallback搜索结果回调

返回值

返回值描述
number当次接口操作的状态码。0 代表调用成功,消息列表通过回调获取;非 0 代表调用失败,不会触发回调

代码示例

TypeScript
const code = await engine.searchMessagesByMessageTypes(
type,
targetId,
channelId,
[RCIMIWMessageType.TEXT],
keyword,
0,
count,
{
onSuccess: (messages: Array<RCIMIWMessage>) => {
//...
},
onError: (errorCode: number) => {
//...
},
},
);