单群聊已读回执
从 1.3.0 版本开始支持该功能。
已读回执功能可以让发送方知道消息是否被对方已读。
- 在单聊场景下 ,当接收方已读消息后,可以主动发送已读回执给发送方,发送方通过监听已读回执消息来获得已读通知。
- 在群聊场景下,当一条消息发送到群组后,发送方可以在消息发送完成后主动发起已读回执请求。群组中的其他成员在读到这条消息后,可以对请求进行响应。发送方通过监听已读回执响应结果来获知哪些群成员已读了这条消息。
SDK 提供了一个已读回执监听器 MessageReadReceiptListener
,用于处理单聊、群聊已读回执相关的事件通知。
单聊已读回执
单聊具体流程描述:
- 发送方发送消息:发送方 App/IMKit 发送任何的记录未读的消息,比如文本、图片等
- 接收方进入聊天页面看到最新消息
- 接收方发送单聊已读回执(带时间戳):接收方 App/IMKit 将当前会话最后一条消息的 sentTime 调用 IMEngine.sendReadReceiptMessage() 发出去
- 发送方接收单聊已读回执,将时间戳前的消息都置为已读:发送方收到单聊已读回执之后, SDK 将时间戳之前的本地消息都置为已读(SentStatus 设置为 Read),然后触发 MessageReadReceiptListener.onMessageReadReceiptReceived
- 发送方将聊天页面该回执前的消息变为已读:发送方 App/IMKit 的聊天页面收到 MessageReadReceiptListener.onMessageReadReceiptReceived 之后,把时间戳之前的消息 UI 都置为已读
备注:单聊如何查看消息已读?看 Message SentStatus == Read 代表已读