getGroupHistoryMessageList
功能介绍
获取群组历史消息
在网络正常的情况下会拉取最新的云端数据。如果网络出现异常,SDK 会返回本地存储的历史消息。
直播群(AVChatRoom):仅旗舰版支持,可在控制台开启[直播群新成员查看入群前消息量配置],支持查看24小时内最多20条消息。
会议群(Meeting)和 社群(Community)默认开启拉取到进群前的历史消息。
好友工作群(Work)和 陌生人社交群(Public)需要前往控制台手动开启。
更多关于群消息的限制,详见 消息能力差异
本地存储的历史消息无时间限制,但云端存储的历史消息有存储时长的限制:
体验版:免费存储 7 天,不支持延长
专业版:免费存储 7 天,支持延长
旗舰版:免费存储 30 天,支持延长
延长历史消息存储时长是增值服务,您可以登录 即时通信 IM 控制台 修改相关配置,具体计费说明请参加 增值服务资费 。
富媒体消息(图片、文件、语音等)对应的文件存储时长,与历史消息存储时长保持一致。
参数详解
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
groupID | string | 是 | 群组id |
count | number | 是 | 拉取消息的个数,不宜太多,会影响消息拉取的速度,这里建议一次拉取 20 个。但是,Web端不能超过15个。 |
lastMsgID | string | 否 | 获取消息的起始消息id,如果传 null,起始消息为会话的最新消息 |
返回模板
V2TimValueCallback<V2TimMessage[]>
{
code : number
desc : string
data : V2TimMessage[]
}
返回值详解
名称 | 数值类型 | 描述 |
---|---|---|
code | number | 请求结果错误码 |
desc | string | 请求结果描述 |
data | V2TimMessage[] | 获取的群组历史消息 |
代码示例
// 拉取单聊历史消息
// 首次拉取,lastMsgID 设置为 null
import { TencentImSDKPlugin } from 'react-native-tim-js';
// 再次拉取时,lastMsgID 可以使用返回的消息列表中的最后一条消息的id
const getGroupHistoryMessageListRes = await TencentImSDKPlugin.v2TIMManager
.getMessageManager()
.getGroupHistoryMessageList(
'groupID', // 单聊用户id
10 // 拉取数据数量
);
if (getGroupHistoryMessageListRes.code == 0) {
//获取成功
}