跳到主要内容

获取会话未读消息

IMLib SDK 支持从指定会话中获取未读消息,可满足 App 跳转到第一条未读消息、展示全部未读 @ 消息的需求。

获取会话中第一条未读消息

您可以通过 getFirstUnreadMessage: 获取会话中的最早一条未读消息。

接口原型

Objective C
- (void)getFirstUnreadMessage:(RCConversationType)conversationType
targetId:(NSString *)targetId
completion:(nullable void(^)(RCMessage *_Nullable message))completion;

参数说明

参数类型说明
conversationTypeRCConversationType会话类型,单聊传入 ConversationType_PRIVATE
targetIdNSString会话 targetId
completionBlock结果回调,返回 RCMessage 对象。

示例方法

Objective C
[[RCCoreClient sharedCoreClient] getFirstUnreadMessage:ConversationType_PRIVATE targetId:@"targetId" completion:^(RCMessage * _Nullable message) {

}];

获取会话中未读的 @ 消息

提示
  • 低于 5.2.5 版本仅提供不带 countdesc 参数的 getUnreadMentionedMessages 方法,每次最多返回 10 条数据。
  • 从 5.2.5 版本开始,getUnreadMentionedMessages 支持 countdesc 参数。该方法仅在 RCCoreClient 中提供。
  • 从 5.3.0 版本开始,建议使用下方异步返回结果的接口,原同步接口同时废弃。

获取会话中最早或最新的未读 @ 消息,最多返回 100 条。

接口原型

Objective C
- (void)getUnreadMentionedMessages:(RCConversationType)conversationType
targetId:(NSString *)targetId
completion:(nullable void(^)(NSArray<RCMessage *> *_Nullable messages))completion;

参数说明

参数类型说明
conversationTypeRCConversationType会话类型
targetIdNSString会话 ID
countint消息条数。最大 100 条。
descBOOLYES:拉取最新的 count 条数据。NO:拉取最早的 count 条数据。
completionBlock异步回调,返回消息对象(RCMessage)列表。

示例代码

Objective C
[[RCCoreClient sharedRCCoreClient]
getUnreadMentionedMessages:ConversationType_PRIVATE
targetId:@"targetId"
count:count
desc: NO
completion:completion:^(RCMessage * _Nullable message) {

}];