TIMConvGetTotalUnreadMessageCount
功能介绍
获取所有会话总的未读消息数
用户的会话列表中一般会有若干个会话,如果某个会话收到了新消息,通常需要在列表的 cell 中以小红点或者数字角标的方式,向用户展示该会话的未读消息数,提醒用户尚未阅读。
通常情况下,如果想得到所有会话的未读消息总数,可以遍历会话列表得到每个会话的信息 V2TimConversation,然后再把所有的 V2TimConversation 的 unreadCount 相加起来,展示在 UI 上。
但 IM SDK 为您提供了直接查询所有会话未读消息总数的 API TIMConvGetTotalUnreadMessageCount
当会话的未读总数发生变更时,SDK 还会主动通过回调 convTotalUnreadMessageCountChangedCallback,将最新的未读总数通知给您。
用户点击进入会话后退回到会话列表,需要清除未读消息数。清除后,会话列表的小红点或数字角标需要随之消失。
参数详解
参数名称 | 参数类型 | 是否必填 | 描述 |
---|---|---|---|
param | convGetTotalUnreadMessageCount | 是 | 获取所有会话总的未读消息数的参数 |
返回模板
Promise<commonResult<totalUnreadCountResult>>
{
code: TIMResult | TIMErrCode;
desc?: string | undefined;
json_param?: totalUnreadCountResult | undefined;
json_params?: totalUnreadCountResult | undefined; // 兼容
user_data?: string | undefined;
}
返回值详解
名称 | 数值类型 | 描述 |
---|---|---|
code | TIMResult | TIMErrCode | 返回状态码 |
desc | string | undefined | 返回描述 |
json_param | totalUnreadCountResult | undefined | 根据具具体接口返回 |
json_params | totalUnreadCountResult | undefined | 兼容的字段,某些情况下会返回这个,根据具体接口返回 |
user_data | string | undefined | ImSDK负责透传的用户自定义数据,未做任何处理 |
代码示例
import TimRender from "im_electron_sdk/dist/renderer";
const timRenderInstance = new TimRender();
import { convGetTotalUnreadMessageCount } from "im_electron_sdk/dist/interfaces";
let param :convGetTotalUnreadMessageCount = {
user_data:"", //选填
}
let {code} = await timRenderInstance.TIMConvGetTotalUnreadMessageCount(param)
if(code == 0){
//获取成功
}