查询历史消息
更新时间: 2024/03/14 19:21:13
QChat SDK 的QChatMsgServiceInterface接口提供getHistoryMessage方法,可从查询指定时间段内最多limit条历史消息。这里limit指指定的查询结果上限。
调用说明
调用该方法,必须传入需要查询消息所属的服务器 ID(serverId)和频道 ID(channelId)。查询范围由开始时间(beginTime)、结束时间(endTime) 和 查询数量上限(limit) 共同决定。如果 beginTime 到 endTime 之间消息大于 limit 条,返回 limit 条记录;如果小于 limit 条,返回实际条数;当已经查询到头时,返回的结果数量可能会比 limit 小。
同时可以设置排除查询的消息ID,用于排除查询时起始时间锚点的消息。如果beginTime上有多条消息,可以指定excludeMsgId所代表的消息的时间作为实际的起始时间
endTime如果设置为 0 则代表服务器当前时间。- 首次查询时,推荐
beginTime=0,endTime=0得到列表。再次查询时,则传入对应的beginTime,endTime和excludeMsgId。
示例代码
js// page 1
const page1Msgs = await qchat.qchatMsg.getHistoryMessage({
serverId: "{{YOUR_SERVERID}}",
channelId: "{{YOUR_CHANNELID}}",
beginTime: 0,
endTime: 0,
})
const length = page1Msgs.length
console.log(length) // 100
// page 2
const page2Msgs = await qchat.qchatMsg.getHistoryMessage({
serverId: "{{YOUR_SERVERID}}",
channelId: "{{YOUR_CHANNELID}}",
beginTime: 0,
endTime: page2Msgs[length - 1].time,
excludeMsgId: page2Msgs[length - 1].msgIdServer,
})
此文档是否对你有帮助?






