Количество непрочитанных сообщений можно получить с помощью свойства комнаты unreadCount . Существует учебник , который показывает, как получить счетчик непрочитанных и управлять курсорами. Документы JS для Chatkit включают в себя некоторые фрагменты кода для управления счетом непрочитанных: https://pusher.com/docs/chatkit/reference/javascript.
Например, следующее будет регистрировать количество непрочитанных, когда пользователь присоединяется к комнате, и будет устанавливать курсор пользователя при каждом получении сообщения.
currentUser.subscribeToRoomMultipart({
roomId: this.currentRoom,
messageLimit: 100,
hooks: {
//Message is received
onMessage: message => {
this.lastMessage = message.id;
//set cursor
currentUser.setReadCursor({
roomId: this.currentRoom,
position: this.lastMessage
})
.then(() => {
console.log(`Set cursor to message ${this.lastMessage}`)
})
.catch(err => {
console.log(`Error setting cursor: ${err}`)
})
}
},
}).then(room => {
//log unread count
console.log(`Unread count: ${room.unreadCount}`)
});