删除好友的时候,对方也删除会话

This commit is contained in:
2022-02-24 12:10:06 +08:00
parent 519caab9e5
commit 831776f7dd
2 changed files with 20 additions and 14 deletions

View File

@@ -119,7 +119,6 @@
initGroupInfo() { initGroupInfo() {
// 获取群信息,成员数量,设置标题 // 获取群信息,成员数量,设置标题
getGroupBase(this.targetId).then(res => { getGroupBase(this.targetId).then(res => {
this.$store.dispatch('updateContact', res)
uni.setNavigationBarTitle({ uni.setNavigationBarTitle({
title: res.name + `(${res.members})` title: res.name + `(${res.members})`
}) })

View File

@@ -67,7 +67,7 @@ const imLibListeners = () => {
// 添加消息监听函数 // 添加消息监听函数
IMLib.addReceiveMessageListener((res) => { IMLib.addReceiveMessageListener((res) => {
const message = res.data.message const message = res.data.message
console.error('[收到消息]',IMLib.ObjectName.GroupNotification, message) console.error('[收到消息]', message)
checkContactExists(message) checkContactExists(message)
if (utils.inArray(message.objectName, notifyMsgTypes)) { if (utils.inArray(message.objectName, notifyMsgTypes)) {
onReceiveMessage(message) onReceiveMessage(message)
@@ -78,29 +78,36 @@ const imLibListeners = () => {
// 调用完更新之后,删除这条消息 // 调用完更新之后,删除这条消息
IMLib.deleteMessagesByIds([message.messageId]) IMLib.deleteMessagesByIds([message.messageId])
} else if (message.objectName === IMLib.ObjectName.ContactNotification) { } else if (message.objectName === IMLib.ObjectName.ContactNotification) {
// 触发一个新好友的通知事件,【会话列表,通讯录,新朋友】页面 if (message.content.operation === 'Request') {
uni.$emit('onNewContactConversation', message) // 触发一个新好友的通知事件,【会话列表,通讯录,新朋友】页面
uni.$emit('onNewContactFriends', message) uni.$emit('onNewContactConversation', message)
uni.$emit('onNewContactPendings', message) uni.$emit('onNewContactFriends', message)
uni.$emit('onNewContactPendings', message)
} else if (message.content.operation === 'Delete') {
console.log('解除好友关系', message.targetId);
IMLib.cleanHistoryMessages(1, message.targetId, message.sentTime, false)
// 解散了就删了吧
IMLib.removeConversation(1, message.targetId)
// 刷新会话列表
uni.$emit('onReceiveMessage', message)
}
} else if (message.objectName === IMLib.ObjectName.GroupNotification) { } else if (message.objectName === IMLib.ObjectName.GroupNotification) {
console.log('踢出用户',message);
// 解散群 // 解散群
if (message.content.operation === 'Dismiss') { if (message.content.operation === 'Dismiss') {
IMLib.cleanHistoryMessages(message.conversationType, message.targetId, message.sentTime, IMLib.cleanHistoryMessages(3, message.targetId, message.sentTime,
false) false)
// 解散了就删了吧 // 解散了就删了吧
IMLib.removeConversation(message.conversationType, message.targetId) IMLib.removeConversation(3, message.targetId)
// 发布群解散的消息 // 发布群解散的消息
uni.$emit('onGroupDismiss') uni.$emit('onGroupDismiss')
uni.$emit('onGroupDismiss_' + message.targetId) uni.$emit('onGroupDismiss_' + message.targetId)
} else if (message.content.operation === 'REMOVE') { } else if (message.content.operation === 'REMOVE') {
console.log('踢出', message.content);
// 要判断是否当前用户,然后把当前用户踢出到主页去, 删除聊天记录,会话列表 // 要判断是否当前用户,然后把当前用户踢出到主页去, 删除聊天记录,会话列表
if (message.content.extra == store.getters.sender.userId) { if (message.content.extra == store.getters.sender.userId) {
IMLib.cleanHistoryMessages(message.conversationType, message.targetId, message.sentTime, IMLib.cleanHistoryMessages(3, message.targetId, message.sentTime,
false) false)
// 解散了就删了吧 // 解散了就删了吧
IMLib.removeConversation(message.conversationType, message.targetId) IMLib.removeConversation(3, message.targetId)
// 为了更新群列表 // 为了更新群列表
uni.$emit('onGroupDismiss') uni.$emit('onGroupDismiss')
uni.$emit('onGroupRemoveYou_' + message.targetId) uni.$emit('onGroupRemoveYou_' + message.targetId)