@aochuang/client-sdk 1.0.371 → 1.0.372
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/common/.DS_Store +0 -0
- package/components/.DS_Store +0 -0
- package/components/index.js +6 -1
- package/components/session-select/session-select-item.vue +8 -9
- package/components/wechat-chat-control/.DS_Store +0 -0
- package/components/wechat-chat-control/transfer/.DS_Store +0 -0
- package/components/wechat-chat-control/url/.DS_Store +0 -0
- package/components/wechat-chat-control/voice/.DS_Store +0 -0
- package/components/wework-chat-control/channel-card/channel-card.vue +144 -0
- package/components/wework-chat-control/channel-live/channel-live.vue +7 -2
- package/components/wework-chat-control/company-card/company-card.vue +1 -1
- package/components/wework-chat-control/custom-expression/custom-expression.vue +2 -1
- package/components/wework-chat-control/file-url/file-url.vue +34 -16
- package/components/wework-chat-control/image/image.vue +137 -2
- package/components/wework-chat-control/index.js +15 -7
- package/components/wework-chat-control/link/.DS_Store +0 -0
- package/components/wework-chat-control/location/location.vue +3 -3
- package/components/wework-chat-control/merge-message/merge-message-panel.vue +63 -0
- package/components/wework-chat-control/merge-message/merge-message.vue +84 -0
- package/components/wework-chat-control/merge-message/util.js +59 -0
- package/components/wework-chat-control/metting/enterprise-wechat.png +0 -0
- package/components/wework-chat-control/metting/meeting-video.svg +4 -0
- package/components/wework-chat-control/metting/metting.vue +181 -0
- package/components/wework-chat-control/red-envelopes/red-envelopes.vue +3 -2
- package/components/wework-chat-control/text/text-default.vue +99 -0
- package/components/wework-chat-control/text/text-quote.vue +105 -0
- package/components/wework-chat-control/text/text.vue +24 -144
- package/components/wework-chat-control/url/url-channel-live.vue +53 -0
- package/components/wework-chat-control/url/url-miniprogram.vue +6 -7
- package/components/wework-chat-control/url/url.vue +26 -2
- package/components/wework-chat-control/util.js +26 -17
- package/components/wework-chat-control/video/.DS_Store +0 -0
- package/components/wework-chat-control/video/video.vue +10 -2
- package/components/wework-chat-control/voice/voice.vue +9 -2
- package/components/wework-chat-control/wework-chat-control-config-item.vue +24 -0
- package/components/wework-chat-control/wework-chat-control-config-msg.vue +25 -0
- package/{uni-components/chat-control/chat-control-config.vue → components/wework-chat-control/wework-chat-control-config.vue} +16 -13
- package/components/wework-chat-panel/chat-panel-chat-status/chat-panel-chat-status.vue +73 -0
- package/components/wework-chat-panel/chat-panel-item.vue +56 -25
- package/components/wework-chat-panel/chat-panel.vue +96 -13
- package/package.json +10 -3
- package/services/.DS_Store +0 -0
- package/services/client-chat/client-chat-wework/client-chat-account.js +84 -1
- package/services/client-chat/client-chat-wework/client-chat-concats.js +81 -17
- package/services/client-chat/client-chat-wework/client-chat-message.js +45 -5
- package/services/client-chat/client-chat-wework/client-chat-session.js +59 -4
- package/services/client-chat/client-chat-wework/client-chat-socket.js +13 -1
- package/services/client-chat/client-chat-wework/client-chat.js +320 -11
- package/services/client-chat/client-chat-wework/utils.js +5 -5
- package/components/wework-chat-panel/chat-panel-controls/company-card/company-card.vue +0 -35
- package/components/wework-chat-panel/chat-panel-controls/expression/expression.vue +0 -36
- package/components/wework-chat-panel/chat-panel-controls/file-url/file-url.vue +0 -35
- package/components/wework-chat-panel/chat-panel-controls/image/image.vue +0 -36
- package/components/wework-chat-panel/chat-panel-controls/index.js +0 -35
- package/components/wework-chat-panel/chat-panel-controls/jx-sys-text/jx-sys-text.vue +0 -28
- package/components/wework-chat-panel/chat-panel-controls/link/link.vue +0 -35
- package/components/wework-chat-panel/chat-panel-controls/location/location.vue +0 -35
- package/components/wework-chat-panel/chat-panel-controls/text/text.vue +0 -43
- package/components/wework-chat-panel/chat-panel-controls/unkonw/unkonw.vue +0 -39
- package/components/wework-chat-panel/chat-panel-controls/video/video.vue +0 -37
- package/components/wework-chat-panel/chat-panel-controls/voice/voice.vue +0 -35
- package/uni-common/account-portray/account-portray.vue +0 -51
- package/uni-common/account-select/account-select-item.vue +0 -172
- package/uni-common/account-select/account-select.vue +0 -252
- package/uni-common/all-friend-avatar/all-friend-avatar.vue +0 -49
- package/uni-common/friend-avatar/default.svg +0 -1
- package/uni-common/friend-avatar/friend-avatar.vue +0 -27
- package/uni-common/friend-avatar/index.js +0 -3
- package/uni-common/friend-loader/friend-loader.vue +0 -53
- package/uni-common/friend-portray/friend-portray.vue +0 -56
- package/uni-common/group-avatar/default.svg +0 -1
- package/uni-common/group-avatar/group-avatar.vue +0 -18
- package/uni-common/group-avatar/index.js +0 -3
- package/uni-common/room-avatar/default.svg +0 -6
- package/uni-common/room-avatar/index.js +0 -3
- package/uni-common/room-avatar/room-avatar.vue +0 -27
- package/uni-common/room-loader/room-loader.vue +0 -53
- package/uni-common/room-portray/room-portray.vue +0 -56
- package/uni-components/chat-control/calling/calling.vue +0 -91
- package/uni-components/chat-control/calling/phone-fill.svg +0 -1
- package/uni-components/chat-control/calling/vidicon-fill.svg +0 -1
- package/uni-components/chat-control/channel-video/channel-video.vue +0 -89
- package/uni-components/chat-control/channel-video-card/channel-video-card.vue +0 -105
- package/uni-components/chat-control/channel-video-live/channel-video-live.vue +0 -92
- package/uni-components/chat-control/chat-control-config-item/chat-control-config-item.vue +0 -20
- package/uni-components/chat-control/chat-control-config-item/index.js +0 -3
- package/uni-components/chat-control/chat-control-config-msg/chat-control-config-msg-app.vue +0 -25
- package/uni-components/chat-control/chat-control-config-msg/chat-control-config-msg-h5.vue +0 -21
- package/uni-components/chat-control/chat-control.vue +0 -218
- package/uni-components/chat-control/company-card/company-card.vue +0 -123
- package/uni-components/chat-control/const.js +0 -28
- package/uni-components/chat-control/expression/expression.vue +0 -41
- package/uni-components/chat-control/image/image.vue +0 -68
- package/uni-components/chat-control/index.js +0 -89
- package/uni-components/chat-control/location/location.vue +0 -110
- package/uni-components/chat-control/member-change/member-change.vue +0 -32
- package/uni-components/chat-control/quote-message/quote-message.vue +0 -216
- package/uni-components/chat-control/real-time-position/real-time-position.vue +0 -62
- package/uni-components/chat-control/redpacket/red-envelope.svg +0 -1
- package/uni-components/chat-control/redpacket/redpacket.vue +0 -75
- package/uni-components/chat-control/share-card/share-card.vue +0 -101
- package/uni-components/chat-control/system/system.vue +0 -69
- package/uni-components/chat-control/system-batch-message/system-batch-message.vue +0 -30
- package/uni-components/chat-control/system-text/system-text.vue +0 -32
- package/uni-components/chat-control/text/text.vue +0 -67
- package/uni-components/chat-control/text-with-at/text-with-at.vue +0 -51
- package/uni-components/chat-control/transfer/red-transfer.svg +0 -1
- package/uni-components/chat-control/transfer/transfer.vue +0 -80
- package/uni-components/chat-control/unkonw/unkonw.vue +0 -37
- package/uni-components/chat-control/url/icons/file-excel-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-info-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-music-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-pdf-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-ppt-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-settings-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-text-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-unknow-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-word-line.svg +0 -1
- package/uni-components/chat-control/url/icons/file-zip-line.svg +0 -1
- package/uni-components/chat-control/url/icons/index.js +0 -24
- package/uni-components/chat-control/url/miniprogram.svg +0 -1
- package/uni-components/chat-control/url/url-miniprogram.vue +0 -116
- package/uni-components/chat-control/url/url.vue +0 -306
- package/uni-components/chat-control/url-new/icons/file-excel-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-info-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-music-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-pdf-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-ppt-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-settings-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-text-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-unknow-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-word-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/file-zip-line.svg +0 -1
- package/uni-components/chat-control/url-new/icons/index.js +0 -24
- package/uni-components/chat-control/url-new/url-new.vue +0 -110
- package/uni-components/chat-control/utils.js +0 -12
- package/uni-components/chat-control/video/video.vue +0 -156
- package/uni-components/chat-control/voice/voice.vue +0 -166
- package/uni-components/chat-editor/chat-editor-chartlet/chat-editor-chartlet-collect.vue +0 -84
- package/uni-components/chat-editor/chat-editor-chartlet/chat-editor-chartlet-system.vue +0 -28
- package/uni-components/chat-editor/chat-editor-chartlet/chat-editor-chartlet.vue +0 -85
- package/uni-components/chat-editor/chat-editor-func/chat-editor-func.vue +0 -157
- package/uni-components/chat-editor/chat-editor-func-at/chat-editor-func-at-panel.vue +0 -158
- package/uni-components/chat-editor/chat-editor-func-at/chat-editor-func-at.vue +0 -61
- package/uni-components/chat-editor/chat-editor-func-button/chat-editor-func-button.vue +0 -58
- package/uni-components/chat-editor/chat-editor-func-file/chat-editor-func-file.vue +0 -54
- package/uni-components/chat-editor/chat-editor-func-image/chat-editor-func-image.vue +0 -42
- package/uni-components/chat-editor/chat-editor-func-video/chat-editor-func-video.vue +0 -42
- package/uni-components/chat-editor/chat-editor-func-voice/chat-editor-func-voice.vue +0 -25
- package/uni-components/chat-editor/chat-editor-message-send/chat-editor-message-send.vue +0 -158
- package/uni-components/chat-editor/chat-editor-quote/chat-editor-quote.vue +0 -75
- package/uni-components/chat-editor/chat-editor.vue +0 -257
- package/uni-components/chat-editor/index.js +0 -10
- package/uni-components/chat-editor/util.js +0 -65
- package/uni-components/chat-panel/chat-panel-chats-box.vue +0 -238
- package/uni-components/chat-panel/chat-panel-chats-forward/chat-panel-chats-forward.vue +0 -273
- package/uni-components/chat-panel/chat-panel-chats-item.vue +0 -578
- package/uni-components/chat-panel/chat-panel-chats-status/chat-panel-chats-status.vue +0 -71
- package/uni-components/chat-panel/chat-panel-chats.vue +0 -368
- package/uni-components/chat-panel/chat-panel.vue +0 -227
- package/uni-components/contacts-group-select/contacts-group-select-item.vue +0 -85
- package/uni-components/contacts-group-select/contacts-group-select-panel.vue +0 -119
- package/uni-components/contacts-group-select/contacts-group-select.vue +0 -150
|
@@ -2,6 +2,7 @@ import Vue from 'vue'
|
|
|
2
2
|
import Event from '../../../utils/event.js'
|
|
3
3
|
import { unique } from '../../../utils/string.js'
|
|
4
4
|
import { formatDate } from '../../../utils/date.js'
|
|
5
|
+
import { createPromise } from '../../../utils/util'
|
|
5
6
|
|
|
6
7
|
export default class ClientChatMessage {
|
|
7
8
|
|
|
@@ -22,6 +23,8 @@ export default class ClientChatMessage {
|
|
|
22
23
|
})
|
|
23
24
|
|
|
24
25
|
messageMap = {}
|
|
26
|
+
tempMessageMap = {}
|
|
27
|
+
checkMessageSendResultTaskList = []
|
|
25
28
|
|
|
26
29
|
get messageData () {
|
|
27
30
|
return this.data.messageData
|
|
@@ -33,15 +36,18 @@ export default class ClientChatMessage {
|
|
|
33
36
|
queryMethod: null,
|
|
34
37
|
sortField: null, // 排序的字段,必须是唯一的,例如时间
|
|
35
38
|
groupField: null, // 分组的字段
|
|
39
|
+
checkMessageSendResultMethod: null,
|
|
36
40
|
onAddMessageSuccess: null // 新增消息成功回调事件
|
|
37
41
|
}, options)
|
|
38
42
|
if (!options.clientChat) {
|
|
39
43
|
throw new Error('必须将clientChat传递过来')
|
|
40
44
|
}
|
|
45
|
+
if (!options.checkMessageSendResultMethod) throw new Error('缺少checkMessageSendResultMethod配置')
|
|
41
46
|
this.queryMethod = options.queryMethod
|
|
42
47
|
this.clientChat = options.clientChat
|
|
43
48
|
this.groupField = options.groupField
|
|
44
49
|
this.sortField = options.sortField
|
|
50
|
+
this.checkMessageSendResultMethod = options.checkMessageSendResultMethod
|
|
45
51
|
this.onAddMessageSuccess = options.onAddMessageSuccess
|
|
46
52
|
this.event = new Event()
|
|
47
53
|
}
|
|
@@ -74,7 +80,7 @@ export default class ClientChatMessage {
|
|
|
74
80
|
* "msgSvrId": "4319123759514541049",
|
|
75
81
|
* "msgType": 1,
|
|
76
82
|
* "origin": "0",
|
|
77
|
-
* "
|
|
83
|
+
* "status": 0,
|
|
78
84
|
* "tenantId": "1761952223049924608",
|
|
79
85
|
* "wechatAccountId": "ad9d9ae2a8be4f27311312cdd4af3549dc8427ef",
|
|
80
86
|
* "wechatFriendId": "2089efcc7f8f40b00b7f05fa4c6dfd3bb642774d",
|
|
@@ -89,6 +95,10 @@ export default class ClientChatMessage {
|
|
|
89
95
|
if (this.messageMap[data.id]) {
|
|
90
96
|
return
|
|
91
97
|
}
|
|
98
|
+
if (this.tempMessageMap[data.id]) {
|
|
99
|
+
Object.assign(data, this.tempMessageMap[data.id])
|
|
100
|
+
delete this.tempMessageMap[data.id]
|
|
101
|
+
}
|
|
92
102
|
const groupField = data[this.groupField]
|
|
93
103
|
if (!this.data.messageData[groupField]) {
|
|
94
104
|
Vue.set(this.data.messageData, groupField, {})
|
|
@@ -105,6 +115,7 @@ export default class ClientChatMessage {
|
|
|
105
115
|
}
|
|
106
116
|
this.data.messageData[groupField][sortFields.day][sortFields.milliseconds].push(data)
|
|
107
117
|
this.messageMap[data.id] = data
|
|
118
|
+
if (data.isSend && data.status === 1 && !data._temp) this.addCheckMessageSendResultTask(data)
|
|
108
119
|
if (fireEvent !== false) {
|
|
109
120
|
this.event && this.event.emit('add-message', {
|
|
110
121
|
data
|
|
@@ -119,6 +130,7 @@ export default class ClientChatMessage {
|
|
|
119
130
|
if (!id) {
|
|
120
131
|
return
|
|
121
132
|
}
|
|
133
|
+
this.removeCheckMessageSendResultTask(id)
|
|
122
134
|
const message = this.messageMap[id]
|
|
123
135
|
if (!message) {
|
|
124
136
|
return
|
|
@@ -154,6 +166,7 @@ export default class ClientChatMessage {
|
|
|
154
166
|
updateMessage (id, props) {
|
|
155
167
|
const message = this.getMessage(id)
|
|
156
168
|
if (!message) {
|
|
169
|
+
this.tempMessageMap[id] = props
|
|
157
170
|
return
|
|
158
171
|
}
|
|
159
172
|
if (!props) {
|
|
@@ -215,11 +228,11 @@ export default class ClientChatMessage {
|
|
|
215
228
|
}, data, {
|
|
216
229
|
cmdType: 'CmdQwSendMessage'
|
|
217
230
|
})).then(({ data }) => {
|
|
218
|
-
if (data.
|
|
231
|
+
if (data.status === 0) {
|
|
219
232
|
// 发送成功
|
|
220
|
-
} else if (data.
|
|
233
|
+
} else if (data.status === 2) {
|
|
221
234
|
// 发送失败
|
|
222
|
-
} else if (data.
|
|
235
|
+
} else if (data.status === 1) {
|
|
223
236
|
// 发送中
|
|
224
237
|
}
|
|
225
238
|
// 如果返回的是对象,证明发送成功了
|
|
@@ -273,8 +286,35 @@ export default class ClientChatMessage {
|
|
|
273
286
|
this.clearMessage()
|
|
274
287
|
return this.loadMessageData(params)
|
|
275
288
|
}
|
|
289
|
+
|
|
290
|
+
addCheckMessageSendResultTask (message) {
|
|
291
|
+
if (this.checkMessageSendResultTaskList.some(v => v.id === message.id)) return
|
|
292
|
+
let timer
|
|
293
|
+
const task = { id: message.id, promise: createPromise(), check: () => {
|
|
294
|
+
if (message.status !== 1) return task.promise.resolve()
|
|
295
|
+
if (Date.now() - (message.createTime || message.sendTime) > 5 * 60 * 1000) return task.promise.resolve({status: 3, resultMsg: '消息发送超时'})
|
|
296
|
+
timer = setTimeout(() => {
|
|
297
|
+
Promise.resolve(this.checkMessageSendResultMethod({message})).then(rs => {
|
|
298
|
+
const data = rs && rs.data
|
|
299
|
+
if (data && data.status === 1) task.check()
|
|
300
|
+
else task.promise.resolve(data || {})
|
|
301
|
+
}, () => task.check())
|
|
302
|
+
}, 3000)
|
|
303
|
+
}, cancel: () => { clearTimeout(timer); task.promise.reject('reject') } }
|
|
304
|
+
this.checkMessageSendResultTaskList.push(task)
|
|
305
|
+
task.check()
|
|
306
|
+
task.promise.then(rs => this.updateMessage(message.id, rs || {})).finally(() => this.removeCheckMessageSendResultTask(message.id))
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
removeCheckMessageSendResultTask (id) {
|
|
310
|
+
const index = this.checkMessageSendResultTaskList.findIndex(v => v.id === id)
|
|
311
|
+
if (index >= 0) { this.checkMessageSendResultTaskList[index].cancel(); this.checkMessageSendResultTaskList.splice(index, 1) }
|
|
312
|
+
}
|
|
276
313
|
|
|
277
314
|
reset () {
|
|
315
|
+
this.checkMessageSendResultTaskList.forEach(task => task.cancel())
|
|
316
|
+
this.checkMessageSendResultTaskList = []
|
|
317
|
+
this.tempMessageMap = {}
|
|
278
318
|
this.data.messageData = {}
|
|
279
319
|
}
|
|
280
|
-
}
|
|
320
|
+
}
|
|
@@ -82,7 +82,8 @@ export default class ClientChatSession {
|
|
|
82
82
|
/**
|
|
83
83
|
* 删除会话
|
|
84
84
|
*/
|
|
85
|
-
deleteSessionMethod: null
|
|
85
|
+
deleteSessionMethod: null,
|
|
86
|
+
modifiedAccountMap: {}
|
|
86
87
|
})
|
|
87
88
|
|
|
88
89
|
accountIds = []
|
|
@@ -119,6 +120,23 @@ export default class ClientChatSession {
|
|
|
119
120
|
return this.data.loading
|
|
120
121
|
}
|
|
121
122
|
|
|
123
|
+
isModify (qwAccountId) {
|
|
124
|
+
return !!(qwAccountId && this.data.modifiedAccountMap[qwAccountId])
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
markModify (qwAccountIds) {
|
|
128
|
+
const ids = Array.isArray(qwAccountIds) ? qwAccountIds : [qwAccountIds]
|
|
129
|
+
ids.filter(Boolean).forEach(id => {
|
|
130
|
+
Vue.set(this.data.modifiedAccountMap, id, true)
|
|
131
|
+
})
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
unmarkModify (qwAccountId) {
|
|
135
|
+
if (qwAccountId) {
|
|
136
|
+
Vue.delete(this.data.modifiedAccountMap, qwAccountId)
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
122
140
|
get loadAssignTaskSessioning () {
|
|
123
141
|
return this.data.loadAssignTaskSessioning
|
|
124
142
|
}
|
|
@@ -205,6 +223,35 @@ export default class ClientChatSession {
|
|
|
205
223
|
getSessionByLocal (sessionId) {
|
|
206
224
|
return this.sessionMap[sessionId]
|
|
207
225
|
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* 强制从服务端刷新会话,绕过本地缓存。
|
|
229
|
+
*/
|
|
230
|
+
refreshSession (sessionId) {
|
|
231
|
+
if (!sessionId) {
|
|
232
|
+
return Promise.reject('缺少会话id')
|
|
233
|
+
}
|
|
234
|
+
return this.getSessionMethod({
|
|
235
|
+
id: sessionId
|
|
236
|
+
}).then(rs => {
|
|
237
|
+
if (!rs || !rs.data) {
|
|
238
|
+
return Promise.reject('未找到会话' + sessionId)
|
|
239
|
+
}
|
|
240
|
+
// 事件计算出的 sessionId 是本地索引,始终保持与服务端返回对象一致。
|
|
241
|
+
const serverSession = Object.assign({}, rs.data, {
|
|
242
|
+
id: sessionId
|
|
243
|
+
})
|
|
244
|
+
const localSession = this.getSessionByLocal(sessionId)
|
|
245
|
+
if (localSession) {
|
|
246
|
+
this.updateSession(sessionId, serverSession)
|
|
247
|
+
} else {
|
|
248
|
+
this.addSession(serverSession)
|
|
249
|
+
}
|
|
250
|
+
return Object.assign({}, rs, {
|
|
251
|
+
data: serverSession
|
|
252
|
+
})
|
|
253
|
+
})
|
|
254
|
+
}
|
|
208
255
|
|
|
209
256
|
findSession (findFn) {
|
|
210
257
|
let result
|
|
@@ -418,6 +465,9 @@ export default class ClientChatSession {
|
|
|
418
465
|
}
|
|
419
466
|
}
|
|
420
467
|
delete this.sessionMap[id]
|
|
468
|
+
if (this.data.currentSessionId === id) {
|
|
469
|
+
this.data.currentSessionId = null
|
|
470
|
+
}
|
|
421
471
|
if (checkLastUpdateSession !== false) {
|
|
422
472
|
// todo 后面可能会删掉这块的逻辑,因为后端排序逻辑变了
|
|
423
473
|
this.checkAndUpdateLastUpdateSession()
|
|
@@ -562,7 +612,9 @@ export default class ClientChatSession {
|
|
|
562
612
|
return true
|
|
563
613
|
}
|
|
564
614
|
})
|
|
565
|
-
|
|
615
|
+
if (index >= 0) {
|
|
616
|
+
this.data.sessionGroupData[groupField][topField][oldSortFields.day][oldSortFields.milliseconds].splice(index, 1)
|
|
617
|
+
}
|
|
566
618
|
}
|
|
567
619
|
})
|
|
568
620
|
// 按照新的时间来分组排序
|
|
@@ -635,7 +687,9 @@ export default class ClientChatSession {
|
|
|
635
687
|
return true
|
|
636
688
|
}
|
|
637
689
|
})
|
|
638
|
-
|
|
690
|
+
if (index >= 0) {
|
|
691
|
+
this.data.sessionGroupData[groupField][topField][sortFields.day][sortFields.milliseconds].splice(index, 1)
|
|
692
|
+
}
|
|
639
693
|
}
|
|
640
694
|
})
|
|
641
695
|
// 所有的
|
|
@@ -915,6 +969,7 @@ export default class ClientChatSession {
|
|
|
915
969
|
this.data.sessionData = {}
|
|
916
970
|
this.data.sessionGroupData = {}
|
|
917
971
|
this.data.sessionMuteMap = {}
|
|
972
|
+
this.data.modifiedAccountMap = {}
|
|
918
973
|
// this.data.sessionUnreadCountMap = {}
|
|
919
974
|
this.sessionMap = {}
|
|
920
975
|
if (this.cancelLoadDataRequest) {
|
|
@@ -926,4 +981,4 @@ export default class ClientChatSession {
|
|
|
926
981
|
this.cancelRefreshRequest = null
|
|
927
982
|
}
|
|
928
983
|
}
|
|
929
|
-
}
|
|
984
|
+
}
|
|
@@ -15,11 +15,16 @@ export default class ClietChatSocket {
|
|
|
15
15
|
// 执行回调事件前的方法
|
|
16
16
|
beforeFireCallback: null,
|
|
17
17
|
onCmdQwNewMessage: null,
|
|
18
|
+
onCmdQwContactInfoChanged: null,
|
|
19
|
+
onCmdQwContactRequestChanged: null,
|
|
20
|
+
onCmdQwAcceptContactRequest: null,
|
|
21
|
+
onCmdQwRoomInfoChanged: null,
|
|
18
22
|
onCmdSendMessageResult: null,
|
|
19
23
|
onCmdFriendInfoChanged: null,
|
|
20
24
|
onCmdDownloadVideoResult: null,
|
|
21
25
|
onCmdChatroomInfoChanged: null,
|
|
22
26
|
onCmdChatroomInfoChangedBatch: null,
|
|
27
|
+
onHeartbeatSuccess: null,
|
|
23
28
|
onHeartbeatCheck: null
|
|
24
29
|
}, options)
|
|
25
30
|
if (!options.socket) {
|
|
@@ -27,6 +32,13 @@ export default class ClietChatSocket {
|
|
|
27
32
|
}
|
|
28
33
|
this.socket = options.socket
|
|
29
34
|
this.socket.event.on('onCmdQwNewMessage', options.onCmdQwNewMessage)
|
|
35
|
+
this.socket.event.on('onCmdQwContactInfoChanged', options.onCmdQwContactInfoChanged)
|
|
36
|
+
this.socket.event.on('onCmdQwContactRequestChanged', options.onCmdQwContactRequestChanged)
|
|
37
|
+
this.socket.event.on('onCmdQwAcceptContactRequest', options.onCmdQwAcceptContactRequest)
|
|
38
|
+
this.socket.event.on('onCmdQwRoomInfoChanged', options.onCmdQwRoomInfoChanged)
|
|
39
|
+
this.socket.event.on('onHeartbeatSuccess', (evt) => {
|
|
40
|
+
options.onHeartbeatSuccess && options.onHeartbeatSuccess(evt)
|
|
41
|
+
})
|
|
30
42
|
this.socket.event.on('onHeartbeatCheck', ({ mergeParams }) => {
|
|
31
43
|
options.onHeartbeatCheck && options.onHeartbeatCheck({
|
|
32
44
|
mergeParams
|
|
@@ -62,4 +74,4 @@ export default class ClietChatSocket {
|
|
|
62
74
|
setUrl (url) {
|
|
63
75
|
this.socket.setUrl(url)
|
|
64
76
|
}
|
|
65
|
-
}
|
|
77
|
+
}
|