跳到主要内容

获取聊天室历史消息

开通服务

使用 loadChatRoomMessages 要求开通 聊天室消息云端存储服务。使用前请确认已开通服务。开通后聊天室历史消息保存在云端,默认保存 2 个月。

获取聊天室消息

  • 获取聊天室远端历史记录。
  • 退出聊天室,会清除本地聊天室历史消息。

方法

loadChatRoomMessages(targetId: string, timestamp: number, order: RCIMIWTimeOrder, count: number): Promise<number>;

参数说明

参数类型说明
targetIdstring聊天室 ID
timestampnumber起始的消息发送时间戳。
orderRCIMIWTimeOrder拉取顺序:
RCIMIWTimeOrder.BEFORE降序, 按照时间戳从大到小;
RCIMIWTimeOrder.AFTER升序, 按照时间戳从小到大
countnumber要获取的消息数量,count 大于 0,小于等于 50。

返回值

返回值描述
Promise<number>当次接口操作状态码,并不代表最终操作结果,状态码详细信息

代码示例

engine.loadChatRoomMessages(
useTargetId,
time,
order,
count
)
.then((code: number) => {});

回调方法

  • setOnChatRoomMessagesLoadedListener
setOnChatRoomMessagesLoadedListener(listener?: (code: number, targetId: string, messages: Array<RCIMIWMessage>, syncTime: number) => void): void;

参数说明

参数类型说明
codenumber接口回调的状态码,0 代表成功,非 0 代表出现异常
targetIdstring会话ID
messagesArray<[RCIMIWMessage](https://www.rongcloud.cn/docs/api/react-native/imlib_v5/latest/interfaces/RCIMDefines.RCIMIWMessage.html)>加载到的消息
syncTimestring下次拉取的时间戳

代码示例

engine.setOnChatRoomMessagesLoadedListener(
(
code: number,
targetId: string,
messages: Array<RCIMIWMessage>,
syncTime: number
) => {}
);