浏览 SDKs · uni-app / uni-app x
SDKsuni-app

按 ID 查找消息

在多个会话中按 clientMsgID 批量定位消息。

复制

搜索结果、引用消息或通知跳转应保存消息的 conversationIDclientMsgID,再用 findMessageList() 取回本地已经同步的消息。

参数说明

findMessageList() 接收查询条件数组,每一项结构如下:

参数类型是否必填说明
items[].conversationIDstring目标消息所属的会话 ID。
items[].clientMsgIDListstring[]要在该会话中查找的消息 ID。
import { findMessageList } from '@/uni_modules/unix-openim-sdk'

const result = await findMessageList([
  { conversationID, clientMsgIDList: [clientMsgID] },
])

const targetMessage = result?.findResultItems[0]?.messageList[0]

Promise 成功后,结果是 OpenIMFindMessageResult | null,包含 totalCountfindResultItems。每个结果项提供 conversationIDconversationType、会话展示资料、messageCountmessageList

一次调用可以包含多个会话条件。不要假设响应项与输入数组位置一致,应按结果的 conversationID 和消息的 clientMsgID 对应。缓存未同步、消息已删除或 ID 不存在时可能没有结果;查询不会触发消息事件。需要加载消息前后文时使用读取消息上下文