现在我有一个会话列表页面需要添加上未读消息提醒,但是我只能在登录时通过onMsgNotify监听到在线收到的未读消息,而离线登录后我调用了webim.getRecentContactList获取最近会话列表,但列表中的UnreadMsgCount字段一直为0,我就提交工单询问,他和我说这里就是为0获取不了,让我用unread,好我信了,但是搞笑的是 webim.MsgStore.sessMap()我在事件外想获取就是个空的,根本不行,有没有人了解的,解答一下到底该如何做这个离线登录后获取此期间的未读消息数量

用户4807543用户4807543提问于
风子猪未来的前端开发工程师!成长的路上加油!勿忘初心方得始终回答于
推荐

您好,建议按照以下步骤操作:

1. 离线上线后调用 webim.syncMsgs(updateUnreadCount); // 同步未读消息。

2. 在updateUnreadCount 回调函数中调用 webim.MsgStore.sessMap();获取会话列表,返回值是Object类型的。

3. 遍历这个会话列表,在取得的session对象中 session.unread()获取对应会话的未读计数。

回答过的其他问题

服务器中毒了怎么办?

风子猪未来的前端开发工程师!成长的路上加油!勿忘初心方得始终

微信小程序如何实现消息提示框?

风子猪未来的前端开发工程师!成长的路上加油!勿忘初心方得始终

示例

wx.showToast({
 title: '成功',
 icon: 'success',
 duration: 2000
})

关于作者

所属标签

扫码关注云+社区

领取腾讯云代金券