SDKsReact Native
搜索消息
OpenIM React Native SDK 搜索消息。
使用 searchLocalMessages() 搜索当前账号已同步到本地的消息。
const result = await OpenIMSDK.searchLocalMessages({
conversationID,
keywordList: ['发布'],
messageTypeList: [MessageType.TextMessage],
pageIndex: 1,
count: 20,
});参数说明
keywordList 可传入一个或多个关键词。单个搜索框通常传入一个去除首尾空格且非空的关键词。
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
conversationID | string | 是 | 要搜索的会话 ID。 |
keywordList | string[] | 是 | 关键词列表;单个搜索框通常传入一个清理后的关键词。 |
keywordListMatchType | number | 否 | 多关键词匹配方式:0 表示命中任意关键词(OR),1 表示同时命中全部关键词(AND);省略时按 0 处理。 |
senderUserIDList | string[] | 否 | 仅搜索这些用户发送的消息。 |
messageTypeList | MessageType[] | 否 | 仅搜索指定类型的消息,例如文本消息和 @ 文本消息;省略时按 SDK 默认范围搜索。 |
searchTimePosition | number | 否 | 搜索结束位置,Unix 时间戳,单位为秒。 |
searchTimePeriod | number | 否 | 从 searchTimePosition 向前搜索的时间范围,单位为秒。 |
pageIndex | number | 否 | 搜索结果页码,从 1 开始。 |
count | number | 否 | 每页返回的消息数量。 |
返回结果
调用后返回 SearchMessageResult:
| 字段 | 类型 | 说明 |
|---|---|---|
totalCount | number | 当前条件下的匹配消息总数。 |
searchResultItems | SearchMessageResultItem[] | 按会话组织的搜索结果。 |
每个 SearchMessageResultItem 包含会话信息和 messageList。修改关键词或筛选条件时,从第一页重新搜索,避免混合不同条件的结果。需要定位命中消息前后的记录时见读取消息上下文。
这个页面有帮助吗?