多端同步阅读状态
多端同步阅读状态
调用 sendSyncReadStatusMessage 同步多个客户端的消息阅读状态。
接口
JavaScript
RongIMLib.sendSyncReadStatusMessage(conversation, timestamp)
参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| conversation | IConversationOption | 是 | 目标会话 |
| timestamp | number | 是 | 同步时间戳,可通过消息的 sendTime 获取 |
示例代码
JavaScript
const conversation = {
conversationType: RongIMLib.ConversationType.PRIVATE,
targetId: "<目标用户ID>",
channelId: ""
};
const timestamp = Date.now(); // 阅读消息的 sendTime
// 发送同步已读消息
const syncReadStatusRes = await RongIMLib.sendSyncReadStatusMessage(conversation, timestamp);
console.info('多端同步阅读状态:', syncReadStatusRes);
服务器记录会话未读数
从 SDK 5.34.0 版本开始,融云 Web 与 Electron 平台支持由服务器记录 会话未读数,确保多端未读数统一。开启该功能后,会话未读数由服务器统一管理,用户在任意设备上阅读消息后,其他设备的未读数会自动同步更新。
您可提交工单开通服务器记录会话未读数功能。开启后,您需要通过调用 markRemoteConversationAsRead 接口来清理会话未读数。
important
服务器记录会话未读数功能开启后,以下接口将被禁用:
clearAllMessagesUnreadStatusclearMessagesUnreadStatusclearUnreadCountByTimestampsendSyncReadStatusMessage
接口
JavaScript
RongIMLib.markRemoteConversationAsRead(identifier)
参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| identifier | IConversationIdentifier | 是 | 会话标识,包含会话类型和目标 ID |
示例代码
JavaScript
// 构建会话标识
const identifier = {
conversationType: RongIMLib.ConversationType.PRIVATE,
targetId: "<目标用户ID>",
};
// 调用接口清理会话未读数
RongIMLib
.markRemoteConversationAsRead(identifier)
.then(res => {
if (res.isOk) {
console.log('清理未读数成功');
} else {
console.log('清理未读数失败:', res.code);
}
});