完善websocket的ack消息确认
This commit is contained in:
@@ -333,6 +333,7 @@ export default {
|
||||
|
||||
// 获取最近消息列表
|
||||
getRecentMessageList() {
|
||||
if(!this.currentUser) return;
|
||||
getRecentMessages()
|
||||
.then((response) => {
|
||||
this.recentChats = response.data.recentChats || [];
|
||||
@@ -535,6 +536,12 @@ export default {
|
||||
const message = data.message;
|
||||
const senderName = message.senderName;
|
||||
|
||||
// 给发消息的人返回 ACK
|
||||
sendWebSocketMessage({
|
||||
type: "ack",
|
||||
messageId: message.messageId
|
||||
});
|
||||
|
||||
const currentContactName =
|
||||
this.currentContact && this.currentContact.contactName;
|
||||
|
||||
@@ -546,16 +553,16 @@ export default {
|
||||
time: message.createdAt,
|
||||
});
|
||||
} else {
|
||||
// 不是当前联系人,不加入 contactMessages,只更新最近聊天列表、未读数量
|
||||
// 不是当前联系人,不加入 contactMessages
|
||||
// 如果是当前联系人列表中的成员,更新最近聊天列表、未读数量
|
||||
const contactIndex = this.contactList.findIndex(
|
||||
(item) => item.contactName === senderName
|
||||
);
|
||||
if(contactIndex === -1) return;
|
||||
|
||||
this.updateRecentChat("receive", senderName, message);
|
||||
}
|
||||
|
||||
// 返回 ACK
|
||||
sendWebSocketMessage({
|
||||
type: "ack",
|
||||
messageId: message.messageId,
|
||||
senderName: this.currentUser.username
|
||||
});
|
||||
this.$nextTick(() => {
|
||||
this.scrollToBottom();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user