WEBIM未读计数不对?

时间:2022-06-19
本文章向大家介绍WEBIM未读计数不对?,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
  1. 确认是否开启自动已读上报,Server默认删除未读消息,切换终端、杀进程和退出登录未读数会被清除,如果需要保留可以禁用已读上报disableAutoReport。
  2. 离线消息未读数统计是根据离线消息进行统计,而离线消息有容量限制,如果容量超过会删掉老的未读消息,平均存储100条消息左右,消息内容越多,存储的越少。

web端未读计数统计

ALL ON ONE 的原则,一开始登录的第一条最近联系人的会话是不显示未读计数的

群未读计数初始值

  1. web端群消息未读计数初始是通过最近联系人接口返回
  2. 登录成功后收到的群消息未读计数做加一的处理

C2C未读计数初始值

  1. web端的未读计数是先获取到最近联系人的所有会话,然后sdk里面会将getmsg里面返回的未读消息对应之前的会话来做加一处理用来统计未读消息数
  2. 统计之后的未读计数用webim.MsgStore.sessMap()i.unread()去显示
  3. 登录之后的未读计数根据消息监听做加一处理
 //初始化最近会话的消息未读数
function initUnreadMsgCount(){
    var sess;
    var sessMap=webim.MsgStore.sessMap();
    for (var i in sessMap) {
        sess = sessMap[i];
        if (selToID && selToID != sess.id()) {//更新其他聊天对象的未读消息数
            updateSessDiv(sess.type(), sess.id(), sess.name(), sess.unread());
        }
    }
}