Skip to content
v1
文档/iOS SDK/会话

获取会话总未读数

获取所有会话的总未读消息数。总未读数不会统计已关闭消息通知的会话。

总数来自各会话按 lastDeliverySeqselfReadSeq 和本地已读序列计算后的 unreadCount 之和,不直接采用服务端的 unread_count 字段。

接口

objc
- (void)getTotalUnreadMessageCount:(BIMTotalUnreadMessageCountSucc)succ
                              fail:(BIMFail)fail;

代码示例

swift
BIMManager.sharedInstance().getTotalUnreadMessageCount { totalUnreadCount in
    print("total unread=\(totalUnreadCount)")
} fail: { code, desc in
    print("get total unread fail: \(code) \(desc)")
}

未读数变化监听

objc
- (void)onTotalUnreadMessageCountChanged:(uint64_t)totalUnreadCount;

会话进入本地已读、收到新消息或漫游同步修正序列时,SDK 会通过该回调发布新的总数。切换到 Chats Tab 本身不应清零未读;只有业务明确打开会话并调用本地已读接口时才清零对应会话。