更新时间: 2020-09-11
# 本地获取
开发者可通过下面接口获取 SDK 存储在本地数据库的历史消息。
# 参数说明
输入参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversationType | RCConversationType (opens new window) | 是 | 会话类型,单聊传入 ConversationType_PRIVATE |
targetId | NSString | 是 | 接收方的 userId |
oldestMessageId | long | 是 | 最后一条消息的 messageId,获取此消息之前的 count 条消息,第一次调用应设置为 -1。 |
count | int | 是 | 需要获取的消息数量,每次最多获取 20 条 |
返回参数说明
返回值 | 返回类型 | 说明 |
---|---|---|
history | NSArray | 消息实体RCMessage对象列表 |
返回参数说明
# 代码示例
NSArray *history = [[RCIMClient sharedRCIMClient] getHistoryMessages:ConversationType_PRIVATE targetId:@"接收方的 userId" oldestMessageId:lastMessageID count:count];
已复制
1
2
3
4
5
2
3
4
5
# 远端获取
开发者可通过下面接口获取 SDK 存储在服务端的历史消息。单群聊历史消息需要在 开发者后台 (opens new window) 中开通 IM 商用版
并开启 单群聊消息云存储
功能才可使用。
# 参数说明
输入参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversationType | RCConversationType (opens new window) | 是 | 会话类型 |
targetId | NSString | 是 | 目标会话 ID |
option | RCRemoteHistoryMsgOption | 是 | 可配置的参数,包括拉取数量、拉取顺序等 |
successBlock | Block | - | 获取成功的回调 |
errorBlock | Block | - | 获取失败的回调 |
回调参数说明
success 说明:
回调参数 | 回调类型 | 说明 |
---|---|---|
messages | NSArray | 获取到的历史消息数组 |
isRemaining | BOOL | 是否还有剩余消息 |
error 说明:
回调参数 | 回调类型 | 说明 |
---|---|---|
status | RCErrorCode (opens new window) | 获取失败的错误码 |
# 代码示例
RCRemoteHistoryMsgOption *option = [RCRemoteHistoryMsgOption new]; option.recordTime = recordTime; option.count = 10; option.order = RCRemoteHistoryOrderDesc; [[RCIMClient sharedRCIMClient] getRemoteHistoryMessages:ConversationType_PRIVATE targetId:@"接收方的 userId" option:option success:^(NSArray *messages, BOOL isRemaining) { } error:^(RCErrorCode status) { }];
已复制
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12