跳到主要内容

清除消息未读状态

超级群业务可在多个客户端之间同步消息阅读状态。

同步消息已读状态

调用同步已读状态接口会同时清除本地与服务端记录的消息的未读状态,同时服务端会将最新状态同步给同一用户账号的其他客户端。

  • 如果指定了频道 ID(channelId),则标记该频道所有消息为全部已读,并同步其他客户端。
  • 如果频道 ID 为空,则标记该超级群会话下所有不属于任何频道的消息为全部已读,并同步其他客户端。
提示

超级群暂不支持按时间戳同步已读状态。调用 syncUltraGroupReadStatus 会按指定参数的要求标记全部消息为已读。时间戳参数(timestamp)未使用,可传入任意数字。

方法

syncUltraGroupReadStatus(targetId: string, channelId: string, timestamp: number): Promise<number>;

参数说明

参数类型说明
targetIdstring超级群ID
channelIdstring频道ID
timestampnumber时间戳

返回值

返回值描述
Promise<number>当次接口操作状态码,并不代表最终操作结果,状态码详细信息

代码示例

engine.syncUltraGroupReadStatus(
targetId,
channelId,
timestamp
)
.then((code: number) => {});

回调方法

  • setOnUltraGroupReadStatusSyncedListener
setOnUltraGroupReadStatusSyncedListener(listener?: (code: number, targetId: string, channelId: string, timestamp: number) => void): void;

参数说明

参数类型说明
codenumber接口回调的状态码,0 代表成功,非 0 代表出现异常
targetIdstring超级群ID
channelIdstring频道ID
timestampnumber时间戳

代码示例

engine.setOnUltraGroupReadStatusSyncedListener(
(
code: number,
targetId: string,
channelId: string,
timestamp: number
) => {}
);

监听其他端同步的消息未读状态

当接收到其他端同步的未读状态时,会回调此方法

方法

setOnConversationReadStatusSyncMessageReceivedListener(listener?: (type: RCIMIWConversationType, targetId: string, timestamp: number) => void): void;

参数说明

参数类型说明
conversationTypeRCIMIWConversationType会话类型
targetIdString会话 ID

代码示例

engine.setOnConversationReadStatusSyncMessageReceivedListener(
(
type: RCIMIWConversationType,
targetId: string,
timestamp: number
) => {}
);