( 最近更新时间:2020-05-11 14:30:39 )
# 功能描述
开发者可使用此功能实现消息已读未读功能的展示。
当 A 给 B 发送了一条消息,B 在未阅读之前 A 用户显示未读,当 B 用户阅读并调用发送回执接口之后,A 用户可在监听回执中收到通知,此时可根据对应的数据内容将发送的消息显示为已读。
# 消息发送方请求回执
# 参数说明
输入参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
message | RCMessage (opens new window) | 是 | 会话类型 |
targetId | NSString | 是 | 要求阅读回执的消息 |
successBlock | Block | 是 | 发送成功的回调 |
errorBlock | Block | 是 | 发送失败的回调 |
返回参数说明
error 说明:
回调参数 | 回调类型 | 说明 |
---|---|---|
status | RCErrorCode | 发送失败的错误码 |
# 代码示例
[[RCIMClient sharedRCIMClient] sendReadReceiptRequest:message success:^{} error:^(RCErrorCode nErrorCode) {}];
已复制
1
2
3
2
3
# 消息接收方发送回执
# 参数说明
输入参数说明
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversationType | RCConversationType (opens new window) | 是 | 会话类型,传入ConversationType_GROUP |
targetId | NSString | 是 | 群 ID |
messageList | NSArray<RCMessage *> | 是 | 已经阅读了的消息列表 |
successBlock | Block | 是 | 发送成功的回调 |
errorBlock | Block | 是 | 发送失败的回调 |
返回参数说明
error 说明:
回调参数 | 回调类型 | 说明 |
---|---|---|
status | RCErrorCode | 发送失败的错误码 |
# 代码示例
[[RCIMClient sharedRCIMClient] sendReadReceiptResponse:ConversationType_GROUP targetId:@"targetId" messageList:readReceiptarray success:nil error:nil];
已复制
1
2
3
4
5
2
3
4
5
# 消息发送方监听回执
实现此功能需要开发者遵守 RCIMClientReceiveMessageDelegate
协议。
# 参数说明
代理对象参数说明:
传入参数 | 类型 | 必填 | 说明 |
---|---|---|---|
delegate | id | 是 | IMLib 消息接收监听器 |
userData | id | 否 | 用户自定义的监听器 Key 值,可以为 nil |
协议方法参数说明:
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
conversationType | RCConversationType (opens new window) | 是 | 会话类型,传入ConversationType_GROUP |
targetId | NSString | 是 | 群 ID |
messageUId | NSString | 是 | 请求已读回执的消息ID |
userIdList | NSMutableDictionary | 是 | 已读 userId 列表,key 为发送者的 userId,value 为消息的 sentTime |
# 代码示例
- 设置代理对象:
[[RCIMClient sharedRCIMClient] setReceiveMessageDelegate:self object:nil];
已复制
1
- 实现协议方法:
- (void)onMessageReceiptResponse:(RCConversationType)conversationType targetId:(NSString *)targetId messageUId:(NSString *)messageUId readerList:(NSMutableDictionary *)userIdList { }
已复制
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8