使用TIM的getConversationList函数,不仅可以获取未读消息的具体信息,而是可以获取全部未读未读消息的总数。
调用方法:
import TIM from 'tim-wx-sdk'
// 创建TIM SDK
let $TUIKit = TIM.create({ SDKAppID: '***' })
// 监听IM的ready状态(TIM全部方法都得基本IM的API Ready状态后,不然会报错)
$TUIKit.on(TIM.EVENT.SDK_READY, this.getConversation, this)
// 注册TIM
$TUIKit.login({ userID, userSig })
// 获取客服会话未读消息
getConversation () {
$TUIKit.getConversationList().then(({data: {conversationList: data}}) => {}
}
返回数据结构:
[{
conversationID: "", // 会话id
lastMessage: { // 最后一条未读消息信息
cloudCustomData: "", // 自定义数据
isRevoked: false, // 是否撤回
lastTime: 1644563541, // 发送时间
messageForShow: "456", // 发送内容
nick: "杂货王小二", // 会话方名称
onlineOnlyFlag: false, // 是否在线
payload: {text: "456"}, // 会话信息
type: "TIMTextElem" // 会话类型
},
peerReadTime: 1644563528, // 阅读会话时间
remark: "", // 备注
type: "C2C", // 会话类型(群组 和 单聊)
unreadCount: 1, // 未读总数
userProfile: { // 会话对方信息
},
_isInfoCompleted: false
}]
SDK网址:SDK - Documentation