@chat21/chat21-ionic 3.0.5-8.1 → 3.0.6-2.1
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/CHANGELOG.md +300 -0
- package/LICENSE +661 -21
- package/README.md +21 -0
- package/angular.json +4 -0
- package/config.xml +6 -7
- package/deploy_pre.sh +44 -5
- package/deploy_prod.sh +36 -7
- package/env.sample +7 -3
- package/package.json +12 -8
- package/resources/{Android → android}/icon/drawable-hdpi-icon.png +0 -0
- package/resources/{Android → android}/icon/drawable-ldpi-icon.png +0 -0
- package/resources/{Android → android}/icon/drawable-mdpi-icon.png +0 -0
- package/resources/{Android → android}/icon/drawable-xhdpi-icon.png +0 -0
- package/resources/{Android → android}/icon/drawable-xxhdpi-icon.png +0 -0
- package/resources/{Android → android}/icon/drawable-xxxhdpi-icon.png +0 -0
- package/resources/{Android → android}/icon.png +0 -0
- package/resources/android/splash/drawable-land-hdpi-screen.png +0 -0
- package/resources/android/splash/drawable-land-ldpi-screen.png +0 -0
- package/resources/android/splash/drawable-land-mdpi-screen.png +0 -0
- package/resources/android/splash/drawable-land-xhdpi-screen.png +0 -0
- package/resources/android/splash/drawable-land-xxhdpi-screen.png +0 -0
- package/resources/android/splash/drawable-land-xxxhdpi-screen.png +0 -0
- package/resources/android/splash/drawable-port-hdpi-screen.png +0 -0
- package/resources/android/splash/drawable-port-ldpi-screen.png +0 -0
- package/resources/android/splash/drawable-port-mdpi-screen.png +0 -0
- package/resources/android/splash/drawable-port-xhdpi-screen.png +0 -0
- package/resources/android/splash/drawable-port-xxhdpi-screen.png +0 -0
- package/resources/android/splash/drawable-port-xxxhdpi-screen.png +0 -0
- package/resources/android/splash.png +0 -0
- package/src/app/app-routing.module.ts +36 -17
- package/src/app/app.component.html +18 -5
- package/src/app/app.component.scss +27 -5
- package/src/app/app.component.ts +526 -175
- package/src/app/app.module.ts +29 -12
- package/src/app/chatlib/conversation-detail/conversation-content/conversation-content.component.html +1 -1
- package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.html +35 -24
- package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.scss +166 -50
- package/src/app/chatlib/conversation-detail/ion-conversation-detail/ion-conversation-detail.component.ts +113 -18
- package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.html +23 -33
- package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.scss +19 -7
- package/src/app/chatlib/conversation-detail/message/bubble-message/bubble-message.component.ts +73 -7
- package/src/app/chatlib/conversation-detail/message/image/image.component.html +7 -6
- package/src/app/chatlib/conversation-detail/message/image/image.component.ts +20 -1
- package/src/app/chatlib/conversation-detail/message/message-attachment/message-attachment.component.scss +1 -1
- package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.html +46 -11
- package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.scss +8 -144
- package/src/app/chatlib/list-conversations-component/ion-list-conversations/ion-list-conversations.component.ts +149 -32
- package/src/app/chatlib/list-conversations-component/list-conversations/list-conversations.component.html +1 -1
- package/src/app/chatlib/list-conversations-component/list-conversations/list-conversations.component.ts +13 -10
- package/src/app/components/authentication/login/login.component.html +10 -10
- package/src/app/components/authentication/login/login.component.ts +2 -1
- package/src/app/components/conversation-detail/bubble-my-message/bubble-my-message.component.ts +1 -1
- package/src/app/components/conversation-detail/bubble-others-message/bubble-others-message.component.ts +1 -1
- package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.html +45 -39
- package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.scss +19 -1
- package/src/app/components/conversation-detail/header-conversation-detail/header-conversation-detail.component.ts +160 -54
- package/src/app/components/conversation-detail/message-text-area/message-text-area.component.html +101 -38
- package/src/app/components/conversation-detail/message-text-area/message-text-area.component.scss +95 -19
- package/src/app/components/conversation-detail/message-text-area/message-text-area.component.ts +209 -98
- package/src/app/components/ddp-header/ddp-header.component.html +20 -6
- package/src/app/components/ddp-header/ddp-header.component.scss +4 -0
- package/src/app/components/ddp-header/ddp-header.component.ts +107 -11
- package/src/app/components/image-viewer/image-viewer.component.html +23 -0
- package/src/app/components/image-viewer/image-viewer.component.scss +107 -0
- package/src/app/components/image-viewer/image-viewer.component.spec.ts +24 -0
- package/src/app/components/image-viewer/image-viewer.component.ts +38 -0
- package/src/app/components/project-item/project-item.component.html +170 -0
- package/src/app/components/project-item/project-item.component.scss +751 -0
- package/src/app/components/project-item/project-item.component.spec.ts +24 -0
- package/src/app/components/project-item/project-item.component.ts +384 -0
- package/src/app/components/sidebar/sidebar.component.html +275 -0
- package/src/app/components/sidebar/sidebar.component.scss +79 -0
- package/src/app/components/sidebar/sidebar.component.spec.ts +24 -0
- package/src/app/components/sidebar/sidebar.component.ts +541 -0
- package/src/app/components/sidebar-user-details/sidebar-user-details.component.html +121 -0
- package/src/app/components/sidebar-user-details/sidebar-user-details.component.scss +343 -0
- package/src/app/components/sidebar-user-details/sidebar-user-details.component.spec.ts +24 -0
- package/src/app/components/sidebar-user-details/sidebar-user-details.component.ts +502 -0
- package/src/app/components/utils/avatar-profile/avatar-profile.component.html +7 -0
- package/src/app/components/utils/avatar-profile/avatar-profile.component.ts +22 -5
- package/src/app/pages/authentication/login/login.page.html +1 -2
- package/src/app/pages/authentication/login/login.page.ts +1 -1
- package/src/app/pages/conversation-detail/conversation-detail.module.ts +9 -2
- package/src/app/pages/conversation-detail/conversation-detail.page.html +55 -49
- package/src/app/pages/conversation-detail/conversation-detail.page.scss +28 -0
- package/src/app/pages/conversation-detail/conversation-detail.page.ts +1285 -688
- package/src/app/pages/conversations-list/conversations-list.module.ts +2 -1
- package/src/app/pages/conversations-list/conversations-list.page.html +55 -21
- package/src/app/pages/conversations-list/conversations-list.page.scss +309 -127
- package/src/app/pages/conversations-list/conversations-list.page.ts +833 -358
- package/src/app/pages/create-canned-response/create-canned-response-routing.module.ts +17 -0
- package/src/app/pages/create-canned-response/create-canned-response.module.ts +30 -0
- package/src/app/pages/create-canned-response/create-canned-response.page.html +150 -0
- package/src/app/pages/create-canned-response/create-canned-response.page.scss +55 -0
- package/src/app/pages/create-canned-response/create-canned-response.page.spec.ts +24 -0
- package/src/app/pages/create-canned-response/create-canned-response.page.ts +319 -0
- package/src/app/pages/create-requester/create-requester-routing.module.ts +17 -0
- package/src/app/pages/create-requester/create-requester.module.ts +28 -0
- package/src/app/pages/create-requester/create-requester.page.html +67 -0
- package/src/app/pages/create-requester/create-requester.page.scss +30 -0
- package/src/app/pages/create-requester/create-requester.page.spec.ts +24 -0
- package/src/app/pages/create-requester/create-requester.page.ts +138 -0
- package/src/app/pages/create-ticket/create-ticket-routing.module.ts +17 -0
- package/src/app/pages/create-ticket/create-ticket.module.ts +28 -0
- package/src/app/pages/create-ticket/create-ticket.page.html +171 -0
- package/src/app/pages/create-ticket/create-ticket.page.scss +52 -0
- package/src/app/pages/create-ticket/create-ticket.page.spec.ts +24 -0
- package/src/app/pages/create-ticket/create-ticket.page.ts +432 -0
- package/src/app/pages/loader-preview/loader-preview.page.ts +226 -166
- package/src/app/pages/profile-info/profile-info.page.html +4 -4
- package/src/app/pages/profile-info/profile-info.page.scss +13 -2
- package/src/app/pages/profile-info/profile-info.page.ts +23 -21
- package/src/app/pages/unassigned-conversations/unassigned-conversations-routing.module.ts +17 -0
- package/src/app/pages/unassigned-conversations/unassigned-conversations.module.ts +22 -0
- package/src/app/pages/unassigned-conversations/unassigned-conversations.page.html +27 -0
- package/src/app/pages/unassigned-conversations/unassigned-conversations.page.scss +173 -0
- package/src/app/pages/unassigned-conversations/unassigned-conversations.page.spec.ts +24 -0
- package/src/app/pages/unassigned-conversations/unassigned-conversations.page.ts +151 -0
- package/src/app/services/app-config.ts +77 -5
- package/src/app/services/nav-proxy.service.ts +1 -1
- package/src/app/services/tiledesk/tiledesk.service.ts +231 -1
- package/src/app/services/websocket/websocket-js.ts +560 -0
- package/src/app/services/websocket/websocket.service.spec.ts +12 -0
- package/src/app/services/websocket/websocket.service.ts +292 -0
- package/src/app/shared/shared.module.ts +28 -8
- package/src/app/utils/scrollbar-theme.directive.ts +58 -24
- package/src/assets/i18n/de.json +265 -0
- package/src/assets/i18n/en.json +89 -7
- package/src/assets/i18n/es.json +265 -0
- package/src/assets/i18n/fr.json +265 -0
- package/src/assets/i18n/it.json +108 -34
- package/src/assets/i18n/pt.json +265 -0
- package/src/assets/i18n/ru.json +265 -0
- package/src/assets/i18n/sr.json +265 -0
- package/src/assets/i18n/tr.json +265 -0
- package/src/assets/images/default-avatar-x-select.png +0 -0
- package/src/assets/images/language_flag/ar.png +0 -0
- package/src/assets/images/language_flag/bg.png +0 -0
- package/src/assets/images/language_flag/ca.png +0 -0
- package/src/assets/images/language_flag/cs.png +0 -0
- package/src/assets/images/language_flag/da.png +0 -0
- package/src/assets/images/language_flag/de.png +0 -0
- package/src/assets/images/language_flag/el.png +0 -0
- package/src/assets/images/language_flag/en.png +0 -0
- package/src/assets/images/language_flag/es.png +0 -0
- package/src/assets/images/language_flag/fa.png +0 -0
- package/src/assets/images/language_flag/fi.png +0 -0
- package/src/assets/images/language_flag/fr.png +0 -0
- package/src/assets/images/language_flag/he.png +0 -0
- package/src/assets/images/language_flag/hi.png +0 -0
- package/src/assets/images/language_flag/hr.png +0 -0
- package/src/assets/images/language_flag/hu.png +0 -0
- package/src/assets/images/language_flag/id.png +0 -0
- package/src/assets/images/language_flag/it.png +0 -0
- package/src/assets/images/language_flag/ja.png +0 -0
- package/src/assets/images/language_flag/ko.png +0 -0
- package/src/assets/images/language_flag/ml-IN.png +0 -0
- package/src/assets/images/language_flag/ne-NP.png +0 -0
- package/src/assets/images/language_flag/nl.png +0 -0
- package/src/assets/images/language_flag/no.png +0 -0
- package/src/assets/images/language_flag/pl.png +0 -0
- package/src/assets/images/language_flag/pt-BR.png +0 -0
- package/src/assets/images/language_flag/pt.png +0 -0
- package/src/assets/images/language_flag/ro.png +0 -0
- package/src/assets/images/language_flag/ru.png +0 -0
- package/src/assets/images/language_flag/sk.png +0 -0
- package/src/assets/images/language_flag/sl.png +0 -0
- package/src/assets/images/language_flag/sr.png +0 -0
- package/src/assets/images/language_flag/sv-SE.png +0 -0
- package/src/assets/images/language_flag/ta.png +0 -0
- package/src/assets/images/language_flag/th.png +0 -0
- package/src/assets/images/language_flag/tr.png +0 -0
- package/src/assets/images/language_flag/uk.png +0 -0
- package/src/assets/images/language_flag/vi.png +0 -0
- package/src/assets/images/language_flag/zh-CN.png +0 -0
- package/src/assets/images/language_flag/zh-TW.png +0 -0
- package/src/assets/images/no_image_user.png +0 -0
- package/src/assets/images/priority_icons/high.svg +3 -0
- package/src/assets/images/priority_icons/high_v2.svg +14 -0
- package/src/assets/images/priority_icons/low.svg +10 -0
- package/src/assets/images/priority_icons/low_v2.svg +14 -0
- package/src/assets/images/priority_icons/medium.svg +16 -0
- package/src/assets/images/priority_icons/medium_v2.svg +11 -0
- package/src/assets/images/priority_icons/urgent.svg +4 -0
- package/src/assets/images/priority_icons/urgent_v2.svg +16 -0
- package/src/assets/js/chat21client.js +159 -84
- package/src/assets/logo.png +0 -0
- package/src/assets/tiledesk-solo-logo.png +0 -0
- package/src/assets/transparent.png +0 -0
- package/src/chat-config-mqtt.json +27 -17
- package/src/chat-config-pre-test.json +6 -2
- package/src/chat-config-template.json +8 -1
- package/src/chat-config.json +8 -1
- package/src/chat21-core/providers/chat-manager.ts +3 -3
- package/src/chat21-core/providers/firebase/firebase-archivedconversations-handler.ts +2 -2
- package/src/chat21-core/providers/firebase/firebase-auth-service.ts +6 -6
- package/src/chat21-core/providers/firebase/firebase-conversation-handler.ts +61 -45
- package/src/chat21-core/providers/firebase/firebase-conversations-handler.ts +24 -1
- package/src/chat21-core/providers/firebase/firebase-notifications.ts +32 -24
- package/src/chat21-core/providers/firebase/firebase-presence.service.ts +2 -2
- package/src/chat21-core/providers/firebase/firebase-typing.service.ts +1 -1
- package/src/chat21-core/providers/firebase/firebase-upload.service.ts +1 -1
- package/src/chat21-core/providers/mqtt/mqtt-archivedconversations-handler.ts +1 -1
- package/src/chat21-core/providers/mqtt/mqtt-conversation-handler.ts +3 -5
- package/src/chat21-core/providers/mqtt/mqtt-conversations-handler.ts +13 -5
- package/src/chat21-core/providers/mqtt/mqtt-notifications.ts +101 -11
- package/src/chat21-core/providers/tiledesk/tiledesk-auth.service.ts +13 -4
- package/src/chat21-core/utils/constants.ts +8 -1
- package/src/chat21-core/utils/utils-message.ts +21 -2
- package/src/chat21-core/utils/utils.ts +13 -2
- package/src/firebase-messaging-sw-template.js +1 -1
- package/src/global.scss +408 -2
- package/src/index.html +7 -0
- package/publish_pre.sh +0 -33
- package/publish_prod.sh +0 -33
- package/resources/Android/splash/drawable-land-hdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-land-ldpi-screen.png +0 -0
- package/resources/Android/splash/drawable-land-mdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-land-xhdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-land-xxhdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-land-xxxhdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-port-hdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-port-ldpi-screen.png +0 -0
- package/resources/Android/splash/drawable-port-mdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-port-xhdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-port-xxhdpi-screen.png +0 -0
- package/resources/Android/splash/drawable-port-xxxhdpi-screen.png +0 -0
- package/resources/Android/splash.png +0 -0
- package/src/assets/images/tiledesk_logo_50x50.png +0 -0
|
@@ -46,7 +46,7 @@ export class ChatManager {
|
|
|
46
46
|
initialize() {
|
|
47
47
|
const appconfig = this.appConfigProvider.getConfig();
|
|
48
48
|
this.tenant = appconfig.firebaseConfig.tenant;
|
|
49
|
-
this.logger.
|
|
49
|
+
this.logger.log('[CHAT MANAGER] - initialize -> firebaseConfig tenant ', this.tenant);
|
|
50
50
|
this.handlers = [];
|
|
51
51
|
this.openInfoConversation = true;
|
|
52
52
|
this.currentUser = null;
|
|
@@ -57,7 +57,7 @@ export class ChatManager {
|
|
|
57
57
|
* setTiledeskToken
|
|
58
58
|
*/
|
|
59
59
|
public setTiledeskToken(tiledeskToken: string) {
|
|
60
|
-
this.logger.
|
|
60
|
+
this.logger.log('initialize FROM [APP-COMP] - [CHAT MANAGER] - initialize -> firebaseConfig tenant ', this.tenant);
|
|
61
61
|
this.tiledeskToken = tiledeskToken;
|
|
62
62
|
}
|
|
63
63
|
|
|
@@ -72,7 +72,7 @@ export class ChatManager {
|
|
|
72
72
|
* setCurrentUser
|
|
73
73
|
*/
|
|
74
74
|
public setCurrentUser(currentUser: UserModel) {
|
|
75
|
-
this.logger.
|
|
75
|
+
this.logger.log('initialize FROM [APP-COMP] - [CHAT MANAGER] setCurrentUser currentUser ', currentUser)
|
|
76
76
|
this.currentUser = currentUser;
|
|
77
77
|
}
|
|
78
78
|
|
|
@@ -64,7 +64,7 @@ export class FirebaseArchivedConversationsHandler extends ArchivedConversationsH
|
|
|
64
64
|
* inizializzo conversations handler
|
|
65
65
|
*/
|
|
66
66
|
initialize(tenant: string, userId: string, translationMap: Map<string, string>) {
|
|
67
|
-
this.logger.
|
|
67
|
+
this.logger.log('initialize FROM [APP-COMP] - FIREBASEArchivedConversationsHandlerSERVICE] tenant ', tenant, ' - userId: ', userId, ' - translationMap: ', translationMap)
|
|
68
68
|
this.tenant = tenant;
|
|
69
69
|
this.loggedUserId = userId;
|
|
70
70
|
this.translationMap = translationMap;
|
|
@@ -306,7 +306,7 @@ export class FirebaseArchivedConversationsHandler extends ArchivedConversationsH
|
|
|
306
306
|
this.archivedConversationAdded.next(conversationAdded);
|
|
307
307
|
}
|
|
308
308
|
} else {
|
|
309
|
-
this.logger.error('[FIREBASEArchivedConversationsHandlerSERVICE] ADDED::conversations with conversationId: ', childSnapshot.key, 'is not valid')
|
|
309
|
+
// this.logger.error('[FIREBASEArchivedConversationsHandlerSERVICE] ADDED::conversations with conversationId: ', childSnapshot.key, 'is not valid')
|
|
310
310
|
}
|
|
311
311
|
}
|
|
312
312
|
|
|
@@ -75,10 +75,10 @@ export class FirebaseAuthService extends MessagingAuthService {
|
|
|
75
75
|
*
|
|
76
76
|
*/
|
|
77
77
|
initialize() {
|
|
78
|
-
|
|
78
|
+
this.logger.log('initialize FROM [APP-COMP] [FIREBASEAuthSERVICE]')
|
|
79
79
|
this.SERVER_BASE_URL = this.getBaseUrl();
|
|
80
80
|
this.URL_TILEDESK_CREATE_CUSTOM_TOKEN = this.SERVER_BASE_URL + 'chat21/firebase/auth/createCustomToken';
|
|
81
|
-
this.logger.
|
|
81
|
+
this.logger.log('[FIREBASEAuthSERVICE] - initialize URL_TILEDESK_CREATE_CUSTOM_TOKEN ', this.URL_TILEDESK_CREATE_CUSTOM_TOKEN)
|
|
82
82
|
|
|
83
83
|
|
|
84
84
|
let firebasePersistence;
|
|
@@ -102,7 +102,7 @@ export class FirebaseAuthService extends MessagingAuthService {
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
firebase.auth().setPersistence(firebasePersistence).then(async () => {
|
|
105
|
-
|
|
105
|
+
this.logger.log('[FIREBASEAuthSERVICE] firebasePersistence ', firebasePersistence)
|
|
106
106
|
// this.onAuthStateChanged(); // commented for new-login
|
|
107
107
|
})
|
|
108
108
|
.catch((error) => {
|
|
@@ -203,12 +203,12 @@ export class FirebaseAuthService extends MessagingAuthService {
|
|
|
203
203
|
// Only one subscriber x application allowed
|
|
204
204
|
// ---------------------------------------------------------------------------------------------------
|
|
205
205
|
if (this.unsubscribe) {
|
|
206
|
-
|
|
206
|
+
this.logger.log('initialize FROM [APP-COMP] - [FIREBASEAuthSERVICE] onAuthStateChanged ALREADY SUBSCRIBED')
|
|
207
207
|
return
|
|
208
208
|
}
|
|
209
209
|
|
|
210
210
|
this.unsubscribe = firebase.auth().onAuthStateChanged(user => {
|
|
211
|
-
|
|
211
|
+
this.logger.log('initialize FROM [APP-COMP] - [FIREBASEAuthSERVICE] onAuthStateChanged', user)
|
|
212
212
|
|
|
213
213
|
|
|
214
214
|
if (!user) {
|
|
@@ -351,7 +351,7 @@ export class FirebaseAuthService extends MessagingAuthService {
|
|
|
351
351
|
// }
|
|
352
352
|
// return firebase.auth().setPersistence(firebasePersistence).then(async () => {
|
|
353
353
|
return firebase.auth().signInWithCustomToken(token).then(async (user) => {
|
|
354
|
-
|
|
354
|
+
this.logger.log('[FIREBASEAuthSERVICE] signInWithCustomToken user: ', user);
|
|
355
355
|
if (user) {
|
|
356
356
|
this.BSAuthStateChanged.next('online');
|
|
357
357
|
}
|
|
@@ -18,11 +18,11 @@ import { ConversationHandlerService } from '../abstract/conversation-handler.ser
|
|
|
18
18
|
import { LoggerService } from '../abstract/logger.service';
|
|
19
19
|
import { LoggerInstance } from '../logger/loggerInstance';
|
|
20
20
|
// utils
|
|
21
|
-
import { MSG_STATUS_RECEIVED, CHAT_REOPENED, CHAT_CLOSED, MEMBER_JOINED_GROUP, TYPE_DIRECT, MESSAGE_TYPE_INFO } from '../../utils/constants';
|
|
22
|
-
import { compareValues,searchIndexInArrayForUid,conversationMessagesRef } from '../../utils/utils';
|
|
21
|
+
import { MSG_STATUS_RECEIVED, CHAT_REOPENED, CHAT_CLOSED, MEMBER_JOINED_GROUP, TYPE_DIRECT, MESSAGE_TYPE_INFO, TOUCHING_OPERATOR } from '../../utils/constants';
|
|
22
|
+
import { compareValues, searchIndexInArrayForUid, conversationMessagesRef } from '../../utils/utils';
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
import { messageType } from 'src/chat21-core/utils/utils-message';
|
|
25
|
+
import { messageType, isEmojii } from 'src/chat21-core/utils/utils-message';
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
|
|
@@ -54,7 +54,7 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
54
54
|
private listSubsriptions: any[];
|
|
55
55
|
private CLIENT_BROWSER: string;
|
|
56
56
|
private lastDate = '';
|
|
57
|
-
private logger:LoggerService = LoggerInstance.getInstance()
|
|
57
|
+
private logger: LoggerService = LoggerInstance.getInstance()
|
|
58
58
|
private ref: firebase.database.Query;
|
|
59
59
|
|
|
60
60
|
constructor(@Inject('skipMessage') private skipMessage: boolean) {
|
|
@@ -64,8 +64,8 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
64
64
|
/**
|
|
65
65
|
* inizializzo conversation handler
|
|
66
66
|
*/
|
|
67
|
-
initialize(recipientId: string,recipientFullName: string,loggedUser: UserModel,tenant: string,translationMap: Map<string, string>) {
|
|
68
|
-
this.logger.
|
|
67
|
+
initialize(recipientId: string, recipientFullName: string, loggedUser: UserModel, tenant: string, translationMap: Map<string, string>) {
|
|
68
|
+
this.logger.log('[FIREBASEConversationHandlerSERVICE] initWithRecipient', recipientId, recipientFullName, loggedUser, tenant, translationMap)
|
|
69
69
|
this.recipientId = recipientId;
|
|
70
70
|
this.recipientFullname = recipientFullName;
|
|
71
71
|
this.loggedUser = loggedUser;
|
|
@@ -74,7 +74,7 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
74
74
|
}
|
|
75
75
|
this.tenant = tenant;
|
|
76
76
|
this.translationMap = translationMap;
|
|
77
|
-
|
|
77
|
+
|
|
78
78
|
this.listSubsriptions = [];
|
|
79
79
|
this.CLIENT_BROWSER = navigator.userAgent;
|
|
80
80
|
this.conversationWith = recipientId;
|
|
@@ -156,23 +156,24 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
156
156
|
typeMsg,
|
|
157
157
|
attributes,
|
|
158
158
|
channelType,
|
|
159
|
-
false
|
|
159
|
+
false,
|
|
160
|
+
isEmojii(msg)
|
|
160
161
|
);
|
|
161
162
|
const messageRef = firebaseMessagesCustomUid.push({
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
163
|
+
language: lang,
|
|
164
|
+
recipient: conversationWith,
|
|
165
|
+
recipient_fullname: recipientFullname,
|
|
166
|
+
sender: sender,
|
|
167
|
+
sender_fullname: senderFullname,
|
|
168
|
+
status: 0,
|
|
169
|
+
metadata: metadataMsg,
|
|
170
|
+
text: msg,
|
|
171
|
+
timestamp: firebase.database.ServerValue.TIMESTAMP,
|
|
172
|
+
type: typeMsg,
|
|
173
|
+
attributes: attributes,
|
|
174
|
+
channel_type: channelType
|
|
175
|
+
// isSender: true
|
|
176
|
+
});
|
|
176
177
|
|
|
177
178
|
// const message = new MessageModel(
|
|
178
179
|
// key,
|
|
@@ -190,9 +191,9 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
190
191
|
// channelType, // channel_type
|
|
191
192
|
// true // is_sender
|
|
192
193
|
// );
|
|
193
|
-
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> messages: ',
|
|
194
|
-
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> senderFullname: ',
|
|
195
|
-
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> sender: ',
|
|
194
|
+
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> messages: ', this.messages);
|
|
195
|
+
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> senderFullname: ', senderFullname);
|
|
196
|
+
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> sender: ', sender);
|
|
196
197
|
this.logger.debug('[FIREBASEConversationHandlerSERVICE] sendMessage --> SEND MESSAGE: ', msg, channelType);
|
|
197
198
|
return message
|
|
198
199
|
}
|
|
@@ -213,7 +214,7 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
213
214
|
// const attributes: any = {
|
|
214
215
|
// client: this.CLIENT_BROWSER,
|
|
215
216
|
// sourcePage: location.href,
|
|
216
|
-
|
|
217
|
+
|
|
217
218
|
// };
|
|
218
219
|
|
|
219
220
|
// if(this.loggedUser && this.loggedUser.email ){
|
|
@@ -222,7 +223,7 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
222
223
|
// if(this.loggedUser && this.loggedUser.fullname) {
|
|
223
224
|
// attributes.userFullname = this.loggedUser.fullname
|
|
224
225
|
// }
|
|
225
|
-
|
|
226
|
+
|
|
226
227
|
|
|
227
228
|
// // let attributes: any = JSON.parse(sessionStorage.getItem('attributes'));
|
|
228
229
|
// // if (!attributes || attributes === 'undefined') {
|
|
@@ -242,7 +243,7 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
242
243
|
private added(childSnapshot: any) {
|
|
243
244
|
const msg = this.messageGenerate(childSnapshot);
|
|
244
245
|
// msg.attributes && msg.attributes['subtype'] === 'info'
|
|
245
|
-
if(this.skipMessage && messageType(MESSAGE_TYPE_INFO, msg)){
|
|
246
|
+
if (this.skipMessage && messageType(MESSAGE_TYPE_INFO, msg)) {
|
|
246
247
|
return;
|
|
247
248
|
}
|
|
248
249
|
this.addRepalceMessageInArray(childSnapshot.key, msg);
|
|
@@ -254,12 +255,12 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
254
255
|
const msg = this.messageGenerate(childSnapshot);
|
|
255
256
|
// imposto il giorno del messaggio per visualizzare o nascondere l'header data
|
|
256
257
|
// msg.attributes && msg.attributes['subtype'] === 'info'
|
|
257
|
-
if(this.skipMessage && messageType(MESSAGE_TYPE_INFO, msg)
|
|
258
|
+
if (this.skipMessage && messageType(MESSAGE_TYPE_INFO, msg)) {
|
|
258
259
|
return;
|
|
259
260
|
}
|
|
260
261
|
this.addRepalceMessageInArray(childSnapshot.key, msg);
|
|
261
262
|
this.messageChanged.next(msg);
|
|
262
|
-
|
|
263
|
+
|
|
263
264
|
}
|
|
264
265
|
|
|
265
266
|
/** */
|
|
@@ -274,7 +275,7 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
274
275
|
|
|
275
276
|
/** */
|
|
276
277
|
private messageGenerate(childSnapshot: any) {
|
|
277
|
-
const msg: MessageModel = childSnapshot.val();
|
|
278
|
+
const msg: MessageModel = childSnapshot.val();
|
|
278
279
|
msg.uid = childSnapshot.key;
|
|
279
280
|
// controllo fatto per i gruppi da rifattorizzare
|
|
280
281
|
if (!msg.sender_fullname || msg.sender_fullname === 'undefined') {
|
|
@@ -285,9 +286,13 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
285
286
|
// msg.text = htmlEntities(msg.text)
|
|
286
287
|
// msg.text = replaceEndOfLine(msg.text)
|
|
287
288
|
// }
|
|
288
|
-
|
|
289
|
+
|
|
289
290
|
// verifico che il sender è il logged user
|
|
290
291
|
msg.isSender = this.isSender(msg.sender, this.loggedUser.uid);
|
|
292
|
+
|
|
293
|
+
//check if message contains only an emojii
|
|
294
|
+
msg.emoticon = isEmojii(msg.text)
|
|
295
|
+
|
|
291
296
|
// traduco messaggi se sono del server
|
|
292
297
|
if (msg.attributes && msg.attributes.subtype) {
|
|
293
298
|
if (msg.attributes.subtype === 'info' || msg.attributes.subtype === 'info/support') {
|
|
@@ -324,6 +329,8 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
324
329
|
const INFO_SUPPORT_USER_ADDED_VERB = this.translationMap.get('INFO_SUPPORT_USER_ADDED_VERB');
|
|
325
330
|
const INFO_SUPPORT_CHAT_REOPENED = this.translationMap.get('INFO_SUPPORT_CHAT_REOPENED');
|
|
326
331
|
const INFO_SUPPORT_CHAT_CLOSED = this.translationMap.get('INFO_SUPPORT_CHAT_CLOSED');
|
|
332
|
+
const INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU = this.translationMap.get('INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU');
|
|
333
|
+
|
|
327
334
|
if (message.attributes.messagelabel
|
|
328
335
|
&& message.attributes.messagelabel.parameters
|
|
329
336
|
&& message.attributes.messagelabel.key === MEMBER_JOINED_GROUP
|
|
@@ -355,6 +362,15 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
355
362
|
} else if ((message.attributes.messagelabel && message.attributes.messagelabel.key === CHAT_CLOSED)) {
|
|
356
363
|
message.text = INFO_SUPPORT_CHAT_CLOSED;
|
|
357
364
|
}
|
|
365
|
+
// ['last_message_text']
|
|
366
|
+
else if ((message.attributes && message.attributes.messagelabel && message.attributes.messagelabel.key === TOUCHING_OPERATOR) && message.sender === "system") {
|
|
367
|
+
// console.log('FIREBASEConversationHandlerSERVICE message text', message.text)
|
|
368
|
+
const textAfterColon = message.text.split(":")[1]
|
|
369
|
+
// console.log('FIREBASEConversationHandlerSERVICE message text - textAfterColon', textAfterColon)
|
|
370
|
+
if (textAfterColon !== undefined) {
|
|
371
|
+
message.text = INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU + ': ' + textAfterColon;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
358
374
|
}
|
|
359
375
|
|
|
360
376
|
|
|
@@ -368,9 +384,9 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
368
384
|
private setStatusMessage(msg: MessageModel, conversationWith: string) {
|
|
369
385
|
if (msg.status < MSG_STATUS_RECEIVED) {
|
|
370
386
|
if (msg.sender !== this.loggedUser.uid && msg.status < MSG_STATUS_RECEIVED) {
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
387
|
+
const urlNodeMessagesUpdate = this.urlNodeFirebase + '/' + msg.uid;
|
|
388
|
+
this.logger.debug('[FIREBASEConversationHandlerSERVICE] update message status', urlNodeMessagesUpdate);
|
|
389
|
+
firebase.database().ref(urlNodeMessagesUpdate).update({ status: MSG_STATUS_RECEIVED });
|
|
374
390
|
}
|
|
375
391
|
}
|
|
376
392
|
}
|
|
@@ -403,14 +419,14 @@ export class FirebaseConversationHandler extends ConversationHandlerService {
|
|
|
403
419
|
// }
|
|
404
420
|
|
|
405
421
|
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
422
|
+
unsubscribe(key: string) {
|
|
423
|
+
this.listSubsriptions.forEach(sub => {
|
|
424
|
+
this.logger.debug('[FIREBASEConversationHandlerSERVICE] unsubscribe: ', sub.uid, key);
|
|
425
|
+
if (sub.uid === key) {
|
|
426
|
+
this.logger.debug('[FIREBASEConversationHandlerSERVICE] unsubscribe: ', sub.uid, key);
|
|
427
|
+
sub.unsubscribe(key, null);
|
|
428
|
+
return;
|
|
429
|
+
}
|
|
430
|
+
});
|
|
431
|
+
}
|
|
416
432
|
}
|
|
@@ -22,6 +22,7 @@ import { AppConfigProvider } from 'src/app/services/app-config';
|
|
|
22
22
|
// utils
|
|
23
23
|
import { avatarPlaceholder, getColorBck } from '../../utils/utils-user';
|
|
24
24
|
import { compareValues, getFromNow, conversationsPathForUserId, searchIndexInArrayForUid, isGroup } from '../../utils/utils';
|
|
25
|
+
import { TOUCHING_OPERATOR } from '../../utils/constants';
|
|
25
26
|
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
|
|
26
27
|
|
|
27
28
|
|
|
@@ -400,7 +401,7 @@ export class FirebaseConversationsHandler extends ConversationsHandlerService {
|
|
|
400
401
|
this.conversationAdded.next(conversationAdded);
|
|
401
402
|
}
|
|
402
403
|
} else {
|
|
403
|
-
this.logger.log('[FIREBASEConversationsHandlerSERVICE]ADDED::conversations with conversationId: ', childSnapshot.key, 'is not valid')
|
|
404
|
+
// this.logger.log('[FIREBASEConversationsHandlerSERVICE]ADDED::conversations with conversationId: ', childSnapshot.key, 'is not valid')
|
|
404
405
|
}
|
|
405
406
|
}
|
|
406
407
|
|
|
@@ -476,6 +477,7 @@ export class FirebaseConversationsHandler extends ConversationsHandlerService {
|
|
|
476
477
|
conversation_with = conv.recipient;
|
|
477
478
|
conversation_with_fullname = conv.recipient_fullname;
|
|
478
479
|
conv.sender_fullname = this.translationMap.get('YOU')
|
|
480
|
+
|
|
479
481
|
// conv.last_message_text = YOU + conv.last_message_text;
|
|
480
482
|
// } else if (conv.channel_type === TYPE_GROUP) {
|
|
481
483
|
} else if (isGroup(conv)) {
|
|
@@ -484,6 +486,12 @@ export class FirebaseConversationsHandler extends ConversationsHandlerService {
|
|
|
484
486
|
conversation_with = conv.recipient;
|
|
485
487
|
conversation_with_fullname = conv.recipient_fullname;
|
|
486
488
|
}
|
|
489
|
+
if (conv.attributes && conv.attributes.subtype) {
|
|
490
|
+
if (conv.attributes.subtype === 'info' || conv.attributes.subtype === 'info/support') {
|
|
491
|
+
this.translateInfoSupportMessages(conv);
|
|
492
|
+
}
|
|
493
|
+
}
|
|
494
|
+
|
|
487
495
|
conv.conversation_with = conversation_with;
|
|
488
496
|
conv.conversation_with_fullname = conversation_with_fullname;
|
|
489
497
|
conv.status = this.setStatusConversation(conv.sender, conv.uid);
|
|
@@ -496,6 +504,21 @@ export class FirebaseConversationsHandler extends ConversationsHandlerService {
|
|
|
496
504
|
}
|
|
497
505
|
|
|
498
506
|
|
|
507
|
+
translateInfoSupportMessages(conv) {
|
|
508
|
+
const INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU = this.translationMap.get('INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU');
|
|
509
|
+
// console.log('[FIREBASEConversationsHandlerSERVICE] INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU', INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU)
|
|
510
|
+
if ((conv.attributes && conv.attributes.messagelabel && conv.attributes.messagelabel.key === TOUCHING_OPERATOR) && conv.sender === "system") {
|
|
511
|
+
// console.log('FIREBASEConversationsHandlerSERVICE last_message_text', conv.last_message_text)
|
|
512
|
+
const textAfterColon = conv.last_message_text.split(":")[1]
|
|
513
|
+
// console.log('FIREBASEConversationsHandlerSERVICE last_message_text - textAfterColon', textAfterColon)
|
|
514
|
+
// message.text = INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU + ' ' + textAfterColon;
|
|
515
|
+
if (textAfterColon !== undefined) {
|
|
516
|
+
conv.last_message_text = INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU + ': ' + textAfterColon;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
|
|
499
522
|
|
|
500
523
|
/** */
|
|
501
524
|
private setStatusConversation(sender: string, uid: string): string {
|
|
@@ -26,7 +26,7 @@ export class FirebaseNotifications extends NotificationsService {
|
|
|
26
26
|
initialize(tenant: string, vapId: string): void {
|
|
27
27
|
this.tenant = tenant
|
|
28
28
|
this.vapidkey = vapId
|
|
29
|
-
this.logger.
|
|
29
|
+
this.logger.log('[FIREBASE-NOTIFICATIONS] initialize - tenant ', this.tenant)
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
if (!('serviceWorker' in navigator)) {
|
|
@@ -34,29 +34,37 @@ export class FirebaseNotifications extends NotificationsService {
|
|
|
34
34
|
this.logger.error("[FIREBASE-NOTIFICATIONS] initialize - Service Worker isn't supported on this browser", navigator)
|
|
35
35
|
return;
|
|
36
36
|
}
|
|
37
|
-
if (('serviceWorker' in navigator)) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
37
|
+
// if (('serviceWorker' in navigator)) {
|
|
38
|
+
// navigator.serviceWorker.register('firebase-messaging-sw.js')
|
|
39
|
+
// .then(function (registration) {
|
|
40
|
+
// console.log('[FIREBASE-NOTIFICATIONS] initialize serviceWorker Registration successful, scope is:', registration.scope);
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
// // this.logger.log("[FIREBASE-NOTIFICATIONS] initialize - Service Worker is supported on this browser ", navigator)
|
|
44
|
+
// // navigator.serviceWorker.getRegistrations().then((serviceWorkerRegistrations) => {
|
|
45
|
+
// // this.logger.log("[FIREBASE-NOTIFICATIONS] initialize - Service Worker is supported on this browser serviceWorkerRegistrations", serviceWorkerRegistrations)
|
|
46
|
+
// // if (serviceWorkerRegistrations.length > 0) {
|
|
47
|
+
// // serviceWorkerRegistrations.forEach(registration => {
|
|
48
|
+
// // this.logger.log("[FIREBASE-NOTIFICATIONS] initialize - Service Worker is supported on this browser registration ", registration)
|
|
49
|
+
// // // this.logger.log("[FIREBASE-NOTIFICATIONS] initialize - Service Worker is supported on this browser registrations scriptURL", registrations.active.scriptURL)
|
|
50
|
+
// // // this.logger.log("[FIREBASE-NOTIFICATIONS] initialize - Service Worker is supported on this browser registrations state", registrations.active.state)
|
|
51
|
+
|
|
52
|
+
// // });
|
|
53
|
+
// // } else {
|
|
54
|
+
// // this.logger.log("[FIREBASE-NOTIFICATIONS] initialize - Service Worker is supported on this browser - !not registered",)
|
|
55
|
+
// // // navigator.serviceWorker.register('http://localhost:8101/firebase-messaging-sw.js')
|
|
56
|
+
// // // .then(function (registration) {
|
|
57
|
+
// // // console.log('Service worker successfully registered.');
|
|
58
|
+
// // // return registration;
|
|
59
|
+
// // // }).catch(function (err) {
|
|
60
|
+
// // // console.error('Unable to register service worker.', err);
|
|
61
|
+
// // // });
|
|
62
|
+
// // }
|
|
63
|
+
// // });
|
|
64
|
+
// }).catch(function (err) {
|
|
65
|
+
// console.log('Service worker registration failed, error:', err);
|
|
66
|
+
// });
|
|
67
|
+
// }
|
|
60
68
|
}
|
|
61
69
|
|
|
62
70
|
|
|
@@ -49,7 +49,7 @@ export class FirebasePresenceService extends PresenceService {
|
|
|
49
49
|
public initialize(tenant: string) {
|
|
50
50
|
// this.tenant = this.getTenant();
|
|
51
51
|
this.tenant = tenant;
|
|
52
|
-
this.logger.
|
|
52
|
+
this.logger.log('[FIREBASEPresenceSERVICE] initialize this.tenant', this.tenant);
|
|
53
53
|
this.urlNodePresence = '/apps/' + this.tenant + '/presence/';
|
|
54
54
|
}
|
|
55
55
|
|
|
@@ -129,7 +129,7 @@ export class FirebasePresenceService extends PresenceService {
|
|
|
129
129
|
* @param userid
|
|
130
130
|
*/
|
|
131
131
|
public setPresence(userid: string): void {
|
|
132
|
-
this.logger.
|
|
132
|
+
this.logger.log('initialize FROM [APP-COMP] - [FIREBASEPresenceSERVICE] - SET PRESENCE userid ', userid)
|
|
133
133
|
this.onlineConnectionsRef = this.referenceOnlineForUser(userid);
|
|
134
134
|
this.lastOnlineConnectionsRef = this.referenceLastOnlineForUser(userid);
|
|
135
135
|
const connectedRefURL = '/.info/connected';
|
|
@@ -52,7 +52,7 @@ export class FirebaseTypingService extends TypingService {
|
|
|
52
52
|
public initialize(tenant: string) {
|
|
53
53
|
// this.tenant = this.getTenant();
|
|
54
54
|
this.tenant = tenant;
|
|
55
|
-
this.logger.
|
|
55
|
+
this.logger.log('[FIREBASETypingSERVICE] initialize - tenant ', this.tenant)
|
|
56
56
|
this.urlNodeTypings = '/apps/' + this.tenant + '/typings/';
|
|
57
57
|
}
|
|
58
58
|
|
|
@@ -43,7 +43,7 @@ export class FirebaseUploadService extends UploadService {
|
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
public initialize() {
|
|
46
|
-
this.logger.
|
|
46
|
+
this.logger.log('[FIREBASEUploadSERVICE] initialize');
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
public upload(userId: string, upload: UploadModel): Promise<any> {
|
|
@@ -82,7 +82,7 @@ export class MQTTArchivedConversationsHandler extends ArchivedConversationsHandl
|
|
|
82
82
|
callback(conversation);
|
|
83
83
|
} else {
|
|
84
84
|
console.log('Not found locally, remote.getConversationDetail *****: ', conversation);
|
|
85
|
-
this.chat21Service.chatClient.
|
|
85
|
+
this.chat21Service.chatClient.archivedConversationDetail(conversationWith, (err, conversation) => {
|
|
86
86
|
if (conversation) {
|
|
87
87
|
if (callback) {
|
|
88
88
|
callback(this.completeConversation(conversation));
|
|
@@ -180,13 +180,11 @@ export class MQTTConversationHandler extends ConversationHandlerService {
|
|
|
180
180
|
channelType,
|
|
181
181
|
// language,
|
|
182
182
|
(err, message) => {
|
|
183
|
-
this.logger.log('[MQTTConversationHandler] message: ' + JSON.stringify(message) + ' sent with err: ' + err);
|
|
184
183
|
if (err) {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
this.logger.log('[MQTTConversationHandler] ERROR', err);
|
|
184
|
+
message.status = '-100';
|
|
185
|
+
this.logger.log('[MQTTConversationHandler] ERROR', err);
|
|
188
186
|
} else {
|
|
189
|
-
|
|
187
|
+
message.status = '150';
|
|
190
188
|
}
|
|
191
189
|
}
|
|
192
190
|
);
|
|
@@ -59,15 +59,19 @@ export class MQTTConversationsHandler extends ConversationsHandlerService {
|
|
|
59
59
|
// 1 search local array
|
|
60
60
|
// 2 search remote
|
|
61
61
|
// callback
|
|
62
|
-
|
|
62
|
+
console.log("SEARCHING CONV:", conversationWith);
|
|
63
63
|
const conversation = this.conversations.find(conv => conv.conversation_with === conversationWith);
|
|
64
|
-
|
|
64
|
+
console.log('[MQTTConversationsHandler] getConversationDetail *****: found locally?', conversation);
|
|
65
65
|
if (conversation) {
|
|
66
|
-
|
|
66
|
+
console.log('[MQTTConversationsHandler] getConversationDetail found LOCALLY!', conversationWith);
|
|
67
67
|
callback(conversation);
|
|
68
68
|
} else {
|
|
69
|
-
|
|
70
|
-
this.chat21Service.chatClient.conversationDetail(conversationWith, (conversation) => {
|
|
69
|
+
console.log('[MQTTConversationsHandler] getConversationDetail *****: Not found locally, SEARCHING REMOTE ', conversation);
|
|
70
|
+
this.chat21Service.chatClient.conversationDetail(conversationWith, (err, conversation) => {
|
|
71
|
+
console.log("--REMOTE CONV IS:" + conversation);
|
|
72
|
+
console.log("--REMOTE CONV IS OBJ:", conversation);
|
|
73
|
+
console.log("--REMOTE ERR IS:" + err);
|
|
74
|
+
|
|
71
75
|
if (conversation) {
|
|
72
76
|
if (callback) {
|
|
73
77
|
callback(this.completeConversation(conversation));
|
|
@@ -381,6 +385,7 @@ export class MQTTConversationsHandler extends ConversationsHandlerService {
|
|
|
381
385
|
}
|
|
382
386
|
|
|
383
387
|
private completeConversation(conv): ConversationModel {
|
|
388
|
+
console.log("COMPLETING CONVERSATION:", conv);
|
|
384
389
|
conv.selected = false;
|
|
385
390
|
if (!conv.sender_fullname || conv.sender_fullname === 'undefined' || conv.sender_fullname.trim() === '') {
|
|
386
391
|
conv.sender_fullname = conv.sender;
|
|
@@ -413,6 +418,9 @@ export class MQTTConversationsHandler extends ConversationsHandlerService {
|
|
|
413
418
|
}
|
|
414
419
|
|
|
415
420
|
private isGroup(conv: ConversationModel) {
|
|
421
|
+
console.log("CONVIS: " + JSON.stringify(conv));
|
|
422
|
+
console.log("CONVIS OBJ:", conv);
|
|
423
|
+
|
|
416
424
|
if (conv.recipient.startsWith('group-') || conv.recipient.startsWith('support-group')) {
|
|
417
425
|
return true;
|
|
418
426
|
};
|