搜索消息
根据关键字搜索
根据关键字搜索指定会话中的消息
方法
TypeScript
searchMessages(
type: RCIMIWConversationType,
targetId: string,
channelId: string,
keyword: string,
startTime: number,
count: number,
callback: IRCIMIWSearchMessagesCallback
): Promise<number>;
参数说明
| 参数名 | 参数类型 | 描述 |
|---|---|---|
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
keyword | string | 搜索的关键字 |
startTime | number | 查询 beginTime 之前的消息, 传 0 时从最新消息开始搜索,从该时间往前搜索。 |
count | number | 查询的数量,0 < count ≤ 50。 |
callback | IRCIMIWSearchMessagesCallback | 接口调用结果回调。 |
返回值
| 返回值 | 描述 |
|---|---|
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>;
参数说明
| 参数名 | 参数类型 | 描述 |
|---|---|---|
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
keyword | string | 搜索的关键字 |
startTime | number | 开始时间 |
endTime | number | 结束时间 |
offset | number | 偏移量 |
count | number | 返回的搜索结果数量,0 < count ≤ 50。 |
callback | IRCIMIWSearchMessagesByTimeRangeCallback | 接口调用结果回调。 |
返回值
| 返回值 | 描述 |
|---|---|
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>;
参数说明
| 参数名 | 参数类型 | 描述 |
|---|---|---|
userId | string | 用户 id |
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会话 ID |
channelId | string | 频道 ID,仅支持超级群使用,其他会话类型传 null 即可。 |
startTime | number | 查询记录的起始时间, 传 0 时从最新消息开始搜索,从该时间往前搜索。 |
count | number | 返回的搜索结果数量 0 < count ≤ 50。 |
callback | IRCIMIWSearchMessagesByUserIdCallback | 接口调用结果回调。 |
返回值
| 返回值 | 描述 |
|---|---|
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>;
参数说明
| 参数名 | 参数类型 | 描述 |
|---|---|---|
type | RCIMIWConversationType | 会话类型 |
targetId | string | 会话 ID |
channelId | string | 消息所属会话的业务标识,仅支持超级群使用,其他会话类型传 null 即可 |
messageTypes | Array<RCIMIWMessageType> | 消息类型集合 |
keyword | string | 搜索关键字,不能为空 |
startTime | number | 查询此时间戳之前的消息,传 0 表示从最新消息开始搜索,单位为毫秒 |
count | number | 最大查询数量,最大为 100 |
callback | IRCIMIWSearchMessagesByMessageTypesCallback | 搜索结果回调 |
返回值
| 返回值 | 描述 |
|---|---|
number | 当次接口操作的状态码。0 代表调用成功,消息列表通过回调获取;非 0 代表调用失败,不会触发 回调 |
代码示例
TypeScript
const code = await engine.searchMessagesByMessageTypes(
type,
targetId,
channelId,
[RCIMIWMessageType.TEXT],
keyword,
0,
count,
{
onSuccess: (messages: Array<RCIMIWMessage>) => {
//...
},
onError: (errorCode: number) => {
//...
},
},
);