单聊消息回执
功能描述
消息回执是一种通信机制,用于实时反馈消息的阅读状态。通过该功能,消息发送方可以确认接收方是否已实际查看消息内容,提升消息交互体验。
实现思路
消息已读回执功能的实现方式在 Web 平台与 Electron 平台存在差异,具体流程如下:
Web
- 当用户查看某单聊会话内的未读消息后,调用 sendReadReceiptMessage 方法发送已读回执。
- 通过 addEventListener方法,设置消息回执监听器。
- SDK 在收到消息已读回执时,触发
READ_RECEIPT_RECEIVED
事件。需注意:Web 平台 SDK 不会持久化记录各会话及消息的已读状态,您需自行在 localStorage 中记录每个会话的已读时间。 - 在渲染消息列表时,根据
localStorage
中记录的已读时间 与消息列表的 sentTime 比较,当 sentTime 小于已读时间时,表示已读,进而更新对应消息的界面状态。
Electron
- 当用户查看某单聊会话内的未读消息后,调用 sendReadReceiptMessage 方法发送已读回执。
- 通过 addEventListener方法,设置消息回执监听器。
- SDK 在收到消息已读回执时,触发
READ_RECEIPT_RECEIVED
事件。 - Electron 平台收到该事件通知后,需调用 electronExtension.setMessageStatusToRead 方法更新消息状态,并刷新对应消息界面。
发送回执
通过 sendReadReceiptMessage方法,向指定会话中发送消息已读回执。
注意