浏览 SDKs · WASM
SDKsWASM

获取消息总未读数

使用 WASM SDK 获取并持续维护账号总未读数。

复制

getTotalUnreadMsgCount() 返回调用时当前账号所有会话的总未读数。不要把当前已加载分页中的 unreadCount 简单相加。

const { data: totalUnread } = await openimsdk.getTotalUnreadMsgCount();
updateApplicationBadge(totalUnread);

查询本身不会触发事件。本页集中提供 SdkEvent.OnTotalUnreadMessageCountChanged 的完整监听示例,用于在应用前台运行期间持续更新总未读数:

import { SdkEvent } from '@openim/wasm-client-sdk';

const handleTotalUnreadChanged = ({ data }) => {
  updateApplicationBadge(data);
};

openimsdk.on(
  SdkEvent.OnTotalUnreadMessageCountChanged,
  handleTotalUnreadChanged,
);

function removeTotalUnreadListener() {
  openimsdk.off(
    SdkEvent.OnTotalUnreadMessageCountChanged,
    handleTotalUnreadChanged,
  );
}

组件卸载、退出登录或切换账号时调用 removeTotalUnreadListener()