跳到主要内容

获取历史消息

从服务端获取历史消息。

提示

Web 没有本地消息存储,消息从融云消息服务器拉取,超级群历史消息默认存储 7 天。如遇到问题,请检查控制台超级群服务页面设置的存储天数。

获取超级群会话历史消息

通过 getHistoryMessages 方法,您可以拉取指定某个会话的历史消息记录。

接口

JavaScript
RongIMLib.getHistoryMessages(conversation, options)

参数说明

参数类型必填说明
conversationIConversationOption目标会话
optionsGetHistoryMessageOption获取历史消息配置项

示例代码

javascript
const conversation = {
conversationType: RongIMLib.ConversationType.ULTRA_GROUP,
targetId: '<目标用户Id>',
channelId: '',
}

RongIMLib.getHistoryMessages(conversation).then((res) => {
if (res.code === 0) {
console.log(res.data.list)
console.log(res.data.hasMore)
} else {
console.log(res.code, res.msg)
}
})

从服务端获取特定批量消息

提示

从 SDK 版本 5.7.0 开始,该接口的返回数据类型由 IReceivedMessage 变更为 IAReceivedMessage

通过 getUltraGroupMessageListByMessageUId 方法,从服务端获取特定批量消息。

接口

JavaScript
RongIMLib.getUltraGroupMessageListByMessageUId(conversation, messages)

参数说明

参数类型必填说明
conversationIConversationOption会话信息
messagesIMessageDesc[]批量消息

示例代码

javascript
const conversationType = RongIMLib.ConversationType.ULTRA_GROUP
const targetId = ' 会话 Id '
const channelId = '<频道ID>'

RongIMLib.getUltraGroupMessageListByMessageUId({ conversationType, targetId, channelId }, msgs)
.then((res) => {
if (res.code === 0) {
console.log(res.code, res.data)
} else {
console.log(res.code, res.msg)
}
})
.catch((error) => {
console.log(error)
})