@chat21/chat21-web-widget 5.0.71-rc.8 → 5.0.71
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 +21 -2
- package/package.json +1 -1
- package/src/app/app.component.ts +37 -36
- package/src/app/component/conversation-detail/conversation/conversation.component.ts +3 -4
- package/src/app/component/message/carousel/carousel.component.ts +1 -1
- package/src/app/providers/translator.service.ts +6 -8
- package/src/app/utils/constants.ts +0 -1
- package/src/app/utils/globals.ts +0 -2
- package/src/assets/i18n/en.json +5 -6
- package/src/assets/i18n/es.json +13 -10
- package/src/assets/i18n/fr.json +13 -10
- package/src/assets/i18n/it.json +13 -10
- package/src/assets/js/chat21client.js +0 -1
- package/src/assets/twp/chatbot-panel.html +93 -11
- package/src/assets/twp/index-dev.html +139 -32
- package/src/assets/twp/index.html +125 -39
- package/src/chat21-core/providers/firebase/firebase-conversation-handler.ts +11 -20
- package/src/chat21-core/providers/mqtt/mqtt-conversation-handler.ts +11 -21
- package/src/chat21-core/providers/tiledesk/tiledesk-auth.service.ts +0 -3
- package/src/chat21-core/utils/constants.ts +9 -7
- package/src/chat21-core/utils/utils-message.ts +23 -1
- package/src/widget-config-template.json +2 -2
- package/src/widget-config.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,26 @@
|
|
|
1
1
|
# chat21-web-widget ver 5.0
|
|
2
2
|
|
|
3
|
+
### 5.0.71 in PROD
|
|
4
|
+
|
|
5
|
+
### 5.0.71-rc.13
|
|
6
|
+
- bug-fixed: wellcome message string
|
|
7
|
+
|
|
8
|
+
### 5.0.71-rc.12
|
|
9
|
+
- changed: index.js, index-dev.js and chatbot-panel.js UI improved
|
|
10
|
+
|
|
11
|
+
### 5.0.71-rc.11
|
|
12
|
+
- added: INFO_MESSAGE_TYPE enum added to manage info message keys into message.attributes object
|
|
13
|
+
- changed: translations aligned for all lang
|
|
14
|
+
- changed: index.js, index-dev.js and chatbot-panel.js UI improved
|
|
15
|
+
|
|
16
|
+
### 5.0.71-rc.10
|
|
17
|
+
- bug-fixed: signInWithCustomToken override tiledesk_token key
|
|
18
|
+
|
|
19
|
+
### 5.0.71-rc.9
|
|
20
|
+
- added: brandSrc env property
|
|
21
|
+
|
|
3
22
|
### 5.0.71-rc.8
|
|
4
|
-
- chaged: chatbot-panel.html page UI (added header as
|
|
23
|
+
- chaged: chatbot-panel.html page UI (added header as style)
|
|
5
24
|
- bug-fixed: drop-zone area wrong height if footer in not visible
|
|
6
25
|
- bug-fixed: set archived conversations as read always
|
|
7
26
|
|
|
@@ -14,7 +33,7 @@
|
|
|
14
33
|
- bug-fixed: do not disable url buttons on carousel element
|
|
15
34
|
- bug-fixed: do not sound if convAdded is fired and on reconnect event
|
|
16
35
|
- bug-fixed: init Rules only if widget is closed
|
|
17
|
-
- removed: 'Powereb By Tiledesk' on conversation and home components only for
|
|
36
|
+
- removed: 'Powereb By Tiledesk' on conversation and home components only for chatbot-panel.html page
|
|
18
37
|
|
|
19
38
|
### 5.0.71-rc.3
|
|
20
39
|
- added: delete method for firebase-upload service
|
package/package.json
CHANGED
package/src/app/app.component.ts
CHANGED
|
@@ -138,9 +138,42 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
138
138
|
this.logger.info('[APP-CONF]---------------- ngAfterViewInit: APP.COMPONENT ---------------- ')
|
|
139
139
|
this.ngZone.run(() => {
|
|
140
140
|
const that = this;
|
|
141
|
+
const subAddedConversation = this.conversationsHandlerService.conversationAdded.subscribe((conversation) => {
|
|
142
|
+
// that.ngZone.run(() => {
|
|
143
|
+
if (that.g.isOpen === true && conversation) {
|
|
144
|
+
that.g.setParameter('displayEyeCatcherCard', 'none');
|
|
145
|
+
that.triggerOnConversationUpdated(conversation);
|
|
146
|
+
that.logger.debug('[APP-COMP] obsAddedConversation ::: ', conversation);
|
|
147
|
+
if (conversation.attributes && conversation.attributes['subtype'] === 'info') {
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
if (conversation.is_new) {
|
|
151
|
+
that.manageTabNotification(false, 'conv-added')
|
|
152
|
+
// this.soundMessage();
|
|
153
|
+
}
|
|
154
|
+
if(this.g.isOpen === false){
|
|
155
|
+
that.lastConversation = conversation;
|
|
156
|
+
that.g.isOpenNewMessage = true;
|
|
157
|
+
}
|
|
158
|
+
} else {
|
|
159
|
+
//widget closed
|
|
160
|
+
|
|
161
|
+
let badgeNewConverstionNumber = that.conversationsHandlerService.countIsNew()
|
|
162
|
+
that.g.setParameter('conversationsBadge', badgeNewConverstionNumber);
|
|
163
|
+
}
|
|
164
|
+
// that.manageTabNotification()
|
|
165
|
+
// });
|
|
166
|
+
if(conversation){
|
|
167
|
+
this.onImageLoaded(conversation)
|
|
168
|
+
this.onConversationLoaded(conversation)
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
});
|
|
172
|
+
this.subscriptions.push(subAddedConversation);
|
|
173
|
+
|
|
141
174
|
const subChangedConversation = this.conversationsHandlerService.conversationChanged.subscribe((conversation) => {
|
|
142
175
|
// that.ngZone.run(() => {
|
|
143
|
-
|
|
176
|
+
if (conversation) {
|
|
144
177
|
this.onImageLoaded(conversation)
|
|
145
178
|
this.onConversationLoaded(conversation)
|
|
146
179
|
|
|
@@ -150,7 +183,7 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
150
183
|
}
|
|
151
184
|
|
|
152
185
|
if(conversation.is_new && conversation.sender !== this.g.senderId && !isInfo(conversation)){
|
|
153
|
-
that.manageTabNotification(conversation.sound);
|
|
186
|
+
that.manageTabNotification(conversation.sound, 'conv-changed');
|
|
154
187
|
}
|
|
155
188
|
|
|
156
189
|
if (that.g.isOpen === true) {
|
|
@@ -186,39 +219,6 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
186
219
|
});
|
|
187
220
|
this.subscriptions.push(subChangedConversation);
|
|
188
221
|
|
|
189
|
-
const subAddedConversation = this.conversationsHandlerService.conversationAdded.subscribe((conversation) => {
|
|
190
|
-
// that.ngZone.run(() => {
|
|
191
|
-
if (that.g.isOpen === true && conversation) {
|
|
192
|
-
that.g.setParameter('displayEyeCatcherCard', 'none');
|
|
193
|
-
that.triggerOnConversationUpdated(conversation);
|
|
194
|
-
that.logger.debug('[APP-COMP] obsAddedConversation ::: ', conversation);
|
|
195
|
-
if (conversation.attributes && conversation.attributes['subtype'] === 'info') {
|
|
196
|
-
return;
|
|
197
|
-
}
|
|
198
|
-
if (conversation.is_new) {
|
|
199
|
-
that.manageTabNotification(false)
|
|
200
|
-
// this.soundMessage();
|
|
201
|
-
}
|
|
202
|
-
if(this.g.isOpen === false){
|
|
203
|
-
that.lastConversation = conversation;
|
|
204
|
-
that.g.isOpenNewMessage = true;
|
|
205
|
-
}
|
|
206
|
-
} else {
|
|
207
|
-
//widget closed
|
|
208
|
-
|
|
209
|
-
let badgeNewConverstionNumber = that.conversationsHandlerService.countIsNew()
|
|
210
|
-
that.g.setParameter('conversationsBadge', badgeNewConverstionNumber);
|
|
211
|
-
}
|
|
212
|
-
// that.manageTabNotification()
|
|
213
|
-
// });
|
|
214
|
-
if(conversation){
|
|
215
|
-
this.onImageLoaded(conversation)
|
|
216
|
-
this.onConversationLoaded(conversation)
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
});
|
|
220
|
-
this.subscriptions.push(subAddedConversation);
|
|
221
|
-
|
|
222
222
|
const subAddedArchivedConversations = this.archivedConversationsService.archivedConversationAdded.subscribe((conversation) => {
|
|
223
223
|
// that.ngZone.run(() => {
|
|
224
224
|
if (conversation) {
|
|
@@ -1473,7 +1473,7 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
1473
1473
|
}
|
|
1474
1474
|
}
|
|
1475
1475
|
|
|
1476
|
-
private manageTabNotification(canSound: boolean) {
|
|
1476
|
+
private manageTabNotification(canSound: boolean, calledby: string) {
|
|
1477
1477
|
if (!this.isTabVisible) {
|
|
1478
1478
|
// TAB IS HIDDEN --> manage title and SOUND
|
|
1479
1479
|
// this.g.windowContext.parent.title = "HIDDEN"
|
|
@@ -1493,6 +1493,7 @@ export class AppComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
|
1493
1493
|
}
|
|
1494
1494
|
}, 1000);
|
|
1495
1495
|
}
|
|
1496
|
+
this.logger.debug('[APP-COMP] manageTabNotification canSound:calledby---->', canSound, calledby)
|
|
1496
1497
|
if(canSound)
|
|
1497
1498
|
this.soundMessage()
|
|
1498
1499
|
}
|
|
@@ -39,10 +39,9 @@ import { TypingService } from 'src/chat21-core/providers/abstract/typing.service
|
|
|
39
39
|
import { CustomTranslateService } from 'src/chat21-core/providers/custom-translate.service';
|
|
40
40
|
import { LoggerInstance } from 'src/chat21-core/providers/logger/loggerInstance';
|
|
41
41
|
import { TiledeskRequestsService } from 'src/chat21-core/providers/tiledesk/tiledesk-requests.service';
|
|
42
|
-
import {
|
|
42
|
+
import { INFO_MESSAGE_TYPE } from 'src/chat21-core/utils/constants';
|
|
43
43
|
import { getDateDifference } from 'src/chat21-core/utils/utils';
|
|
44
44
|
import { isJustRecived, isUserBanned } from 'src/chat21-core/utils/utils-message';
|
|
45
|
-
import { AppComponent } from '../../../app.component';
|
|
46
45
|
import { ConversationContentComponent } from '../conversation-content/conversation-content.component';
|
|
47
46
|
// import { TranslateService } from '@ngx-translate/core';
|
|
48
47
|
|
|
@@ -167,7 +166,7 @@ export class ConversationComponent implements OnInit, AfterViewInit, OnChanges {
|
|
|
167
166
|
public g: Globals,
|
|
168
167
|
public starRatingWidgetService: StarRatingWidgetService,
|
|
169
168
|
public sanitizer: DomSanitizer,
|
|
170
|
-
public appComponent: AppComponent,
|
|
169
|
+
// public appComponent: AppComponent,
|
|
171
170
|
public appStorageService: AppStorageService,
|
|
172
171
|
public conversationHandlerBuilderService: ConversationHandlerBuilderService,
|
|
173
172
|
public appConfigService: AppConfigService,
|
|
@@ -628,7 +627,7 @@ export class ConversationComponent implements OnInit, AfterViewInit, OnChanges {
|
|
|
628
627
|
const message= 'Moved to: [' + this.g.attributes.sourceTitle + '](' + this.g.attributes.sourcePage + ')'
|
|
629
628
|
const attributes={
|
|
630
629
|
subtype: 'info/support',
|
|
631
|
-
messagelabel: {key: LIVE_PAGE}
|
|
630
|
+
messagelabel: {key: INFO_MESSAGE_TYPE.LIVE_PAGE}
|
|
632
631
|
}
|
|
633
632
|
this.logger.debug('[CONV-COMP] sendLivePage --> attributes+message', attributes, message)
|
|
634
633
|
this.conversationFooter.sendMessage(message, TYPE_MSG_TEXT, null, attributes);
|
|
@@ -36,7 +36,7 @@ export class CarouselComponent implements OnInit{
|
|
|
36
36
|
constructor(private elementRef: ElementRef) { }
|
|
37
37
|
|
|
38
38
|
ngOnInit() {
|
|
39
|
-
console.log('[CAROUSEL-MESSAGE] hello', this.message, isCarousel(this.message))
|
|
39
|
+
// console.log('[CAROUSEL-MESSAGE] hello', this.message, isCarousel(this.message))
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
this.wrapper = this.elementRef.nativeElement.querySelector('.wrapper')
|
|
@@ -210,7 +210,6 @@ export class TranslatorService {
|
|
|
210
210
|
// this.setLanguage(globals.windowContext, globals.lang);
|
|
211
211
|
|
|
212
212
|
const labels: string[] = [
|
|
213
|
-
'LABEL_TU',
|
|
214
213
|
'LABEL_PLACEHOLDER',
|
|
215
214
|
'LABEL_START_NW_CONV',
|
|
216
215
|
'LABEL_SELECT_TOPIC',
|
|
@@ -235,8 +234,8 @@ export class TranslatorService {
|
|
|
235
234
|
'BUTTON_EDIT_PROFILE',
|
|
236
235
|
'DOWNLOAD_TRANSCRIPT',
|
|
237
236
|
'RATE_CHAT',
|
|
238
|
-
'
|
|
239
|
-
'
|
|
237
|
+
'WELCOME_TITLE',
|
|
238
|
+
'WELCOME_MSG',
|
|
240
239
|
'OPTIONS',
|
|
241
240
|
'SOUND_ON',
|
|
242
241
|
'SOUND_OFF',
|
|
@@ -264,7 +263,6 @@ export class TranslatorService {
|
|
|
264
263
|
|
|
265
264
|
this._translate.get(labels).subscribe(res => {
|
|
266
265
|
// console.log('»»»» initI18n »»»»»» »»»»»» GET TRANSLATED LABELS RES ', res);
|
|
267
|
-
globals.LABEL_TU = res['LABEL_TU']
|
|
268
266
|
globals.LABEL_PLACEHOLDER = res['LABEL_PLACEHOLDER']
|
|
269
267
|
globals.LABEL_START_NW_CONV = res['LABEL_START_NW_CONV'];
|
|
270
268
|
globals.LABEL_SELECT_TOPIC = res['LABEL_SELECT_TOPIC'];
|
|
@@ -288,8 +286,8 @@ export class TranslatorService {
|
|
|
288
286
|
globals.BUTTON_EDIT_PROFILE = res['BUTTON_EDIT_PROFILE']; // is used ??
|
|
289
287
|
globals.DOWNLOAD_TRANSCRIPT = res['DOWNLOAD_TRANSCRIPT'];
|
|
290
288
|
globals.RATE_CHAT = res['RATE_CHAT']; // is used ??
|
|
291
|
-
globals.
|
|
292
|
-
globals.
|
|
289
|
+
globals.WELCOME_TITLE = res['WELCOME_TITLE'];
|
|
290
|
+
globals.WELCOME_MSG = res['WELCOME_MSG'];
|
|
293
291
|
globals.OPTIONS = res['OPTIONS'];
|
|
294
292
|
globals.SOUND_ON = res['SOUND_ON'];
|
|
295
293
|
globals.SOUND_OFF = res['SOUND_OFF'];
|
|
@@ -315,10 +313,10 @@ export class TranslatorService {
|
|
|
315
313
|
globals.LABEL_ERROR_FIELD_REQUIRED= res['LABEL_ERROR_FIELD_REQUIRED']
|
|
316
314
|
|
|
317
315
|
if (!globals.welcomeTitle) {
|
|
318
|
-
globals.welcomeTitle = globals.
|
|
316
|
+
globals.welcomeTitle = globals.WELCOME_TITLE; /** Set the widget welcome message. Value type : string */
|
|
319
317
|
}
|
|
320
318
|
if (!globals.welcomeMsg) {
|
|
321
|
-
globals.welcomeMsg = globals.
|
|
319
|
+
globals.welcomeMsg = globals.WELCOME_MSG; /** Set the widget welcome message. Value type : string */
|
|
322
320
|
}
|
|
323
321
|
|
|
324
322
|
}, (error) => {
|
|
@@ -52,7 +52,6 @@ export const BCK_COLOR_CONVERSATION_SELECTED = '#EEEEEE';
|
|
|
52
52
|
export const BCK_COLOR_CONVERSATION_UNSELECTED = '#FFFFFF';
|
|
53
53
|
|
|
54
54
|
// LABELS
|
|
55
|
-
// export const LABEL_TU = 'you: ';
|
|
56
55
|
// export const LABEL_MSG_PUSH_START_CHAT = 'Premi qui per chattare con qualcuno';
|
|
57
56
|
// export const LABEL_MSG_START_CHAT = 'inizia a chattare';
|
|
58
57
|
// export const LABEL_ACTIVE_NOW = 'attivo/a ora';
|
package/src/app/utils/globals.ts
CHANGED
|
@@ -72,7 +72,6 @@ export class Globals {
|
|
|
72
72
|
privacyApproved = false;
|
|
73
73
|
|
|
74
74
|
// ============ BEGIN: LABELS ==============//
|
|
75
|
-
LABEL_TU: string;
|
|
76
75
|
LABEL_PLACEHOLDER: string;
|
|
77
76
|
LABEL_START_NW_CONV: string;
|
|
78
77
|
LABEL_SELECT_TOPIC: string;
|
|
@@ -470,7 +469,6 @@ export class Globals {
|
|
|
470
469
|
|
|
471
470
|
this.newConversationStart = true;
|
|
472
471
|
|
|
473
|
-
|
|
474
472
|
}
|
|
475
473
|
|
|
476
474
|
|
package/src/assets/i18n/en.json
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
{
|
|
2
|
-
"LABEL_TU": "",
|
|
3
2
|
"LABEL_PLACEHOLDER": "type your message..",
|
|
4
3
|
"LABEL_START_NW_CONV": "New conversation",
|
|
5
4
|
"LABEL_WHATSAPP": "Message us",
|
|
@@ -17,7 +16,7 @@
|
|
|
17
16
|
"GUEST_LABEL": "Guest",
|
|
18
17
|
"ALL_AGENTS_OFFLINE_LABEL": "All operators are offline at the moment",
|
|
19
18
|
"LABEL_LOADING": "Loading...",
|
|
20
|
-
"CALLOUT_TITLE_PLACEHOLDER": "Need Help?",
|
|
19
|
+
"CALLOUT_TITLE_PLACEHOLDER": "🖐 Need Help?",
|
|
21
20
|
"CALLOUT_MSG_PLACEHOLDER": "Click here and start chatting with us!",
|
|
22
21
|
"CUSTOMER_SATISFACTION": "Customer satisfaction",
|
|
23
22
|
"YOUR_OPINION_ON_OUR_CUSTOMER_SERVICE": "your opinion on our customer service",
|
|
@@ -35,8 +34,9 @@
|
|
|
35
34
|
"BUTTON_CLOSE_TO_ICON": "Minimize chat",
|
|
36
35
|
"BUTTON_EDIT_PROFILE": "Update profile",
|
|
37
36
|
"RATE_CHAT": "Rate chat",
|
|
38
|
-
"
|
|
39
|
-
"
|
|
37
|
+
"WELCOME_TITLE": "Hi, welcome to Tiledesk 👋",
|
|
38
|
+
"WELCOME_MSG": "How can we help?",
|
|
39
|
+
"WELCOME": "Welcome",
|
|
40
40
|
"OPTIONS": "options",
|
|
41
41
|
"SOUND_OFF": "Sound off",
|
|
42
42
|
"SOUND_ON": "Sound on",
|
|
@@ -87,6 +87,5 @@
|
|
|
87
87
|
"SENT_AN_IMAGE":"sent an image",
|
|
88
88
|
|
|
89
89
|
"LABEL_PREVIEW": "Preview",
|
|
90
|
-
"SWITCH_TO":"Or switch to:"
|
|
91
|
-
|
|
90
|
+
"SWITCH_TO": "Or switch to:"
|
|
92
91
|
}
|
package/src/assets/i18n/es.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
|
-
"LABEL_TU": "",
|
|
3
2
|
"LABEL_PLACEHOLDER": "escribe tu mensaje..",
|
|
4
3
|
"LABEL_START_NW_CONV": "Nueva conversación",
|
|
4
|
+
"LABEL_WHATSAPP": "Envíanos un mensaje",
|
|
5
5
|
"LABEL_SELECT_TOPIC": "Elige un tema",
|
|
6
6
|
"LABEL_COMPLETE_FORM": "Complete el formulario para iniciar una conversación con el próximo agente disponible.",
|
|
7
7
|
"LABEL_FIELD_NAME": "Nombre",
|
|
8
8
|
"LABEL_ERROR_FIELD_NAME": "Campo obligatorio (mínimo 5 caracteres).",
|
|
9
9
|
"LABEL_FIELD_EMAIL": "Email",
|
|
10
10
|
"LABEL_ERROR_FIELD_EMAIL": "Introduzca una dirección de correo electrónico válida.",
|
|
11
|
+
"LABEL_ERROR_FIELD_REQUIRED": "Campo obligatorio",
|
|
11
12
|
"LABEL_WRITING": "esta escribiendo...",
|
|
12
13
|
"LABEL_SEND_NEW_MESSAGE": "Enviar un mensaje nuevo",
|
|
13
14
|
"AGENT_NOT_AVAILABLE": " Fuera de línea",
|
|
@@ -15,7 +16,7 @@
|
|
|
15
16
|
"GUEST_LABEL": "Huésped",
|
|
16
17
|
"ALL_AGENTS_OFFLINE_LABEL": "Todos los operadores están desconectados en este momento.",
|
|
17
18
|
"LABEL_LOADING": "Cargando...",
|
|
18
|
-
"CALLOUT_TITLE_PLACEHOLDER": "¿Necesitas ayuda?",
|
|
19
|
+
"CALLOUT_TITLE_PLACEHOLDER": "🖐 ¿Necesitas ayuda?",
|
|
19
20
|
"CALLOUT_MSG_PLACEHOLDER": "¡Haz clic aquí y comienza a chatear con nosotros!",
|
|
20
21
|
"CUSTOMER_SATISFACTION": "La satisfacción del cliente",
|
|
21
22
|
"YOUR_OPINION_ON_OUR_CUSTOMER_SERVICE": "su opinión sobre nuestro servicio al cliente",
|
|
@@ -33,8 +34,9 @@
|
|
|
33
34
|
"BUTTON_CLOSE_TO_ICON": "Minimiza el chat",
|
|
34
35
|
"BUTTON_EDIT_PROFILE": "Actualización del perfil",
|
|
35
36
|
"RATE_CHAT": "Califica el chat",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
37
|
+
"WELCOME_TITLE": "Hola, bienvenido a Tiledesk 👋",
|
|
38
|
+
"WELCOME_MSG": "¿Cómo podemos ayudar?",
|
|
39
|
+
"WELCOME": "Podemos",
|
|
38
40
|
"OPTIONS": "opciones",
|
|
39
41
|
"SOUND_OFF": "Sonido apagado",
|
|
40
42
|
"SOUND_ON": "Sonido encendido",
|
|
@@ -53,6 +55,7 @@
|
|
|
53
55
|
"CLOSE_CHAT": "Cerrar chat",
|
|
54
56
|
"MINIMIZE":"Minimizar",
|
|
55
57
|
"MAXIMIZE":"Maximizar",
|
|
58
|
+
|
|
56
59
|
"INFO_SUPPORT_USER_ADDED_SUBJECT":"tú",
|
|
57
60
|
"INFO_SUPPORT_USER_ADDED_YOU_VERB":"han sido agregados a ",
|
|
58
61
|
"INFO_SUPPORT_USER_ADDED_COMPLEMENT":"joined",
|
|
@@ -63,12 +66,7 @@
|
|
|
63
66
|
"INFO_SUPPORT_MEMBER_LEFT_GROUP":"eliminado del grupo",
|
|
64
67
|
"INFO_SUPPORT_MEMBER_ABANDONED_GROUP":"abandonó la conversación",
|
|
65
68
|
"INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU": "Se le ha asignado una nueva solicitud de soporte",
|
|
66
|
-
"TICKET_TAKING":"La solicitud ha sido recibida y el personal de asistencia está tratando con ella. \nPara agregar más comentarios, responda a este correo electrónico.",
|
|
67
69
|
|
|
68
|
-
"LABEL_ERROR_FIELD_REQUIRED": "Campo obligatorio",
|
|
69
|
-
"SENT_AN_ATTACHMENT": "envió un archivo adjunto",
|
|
70
|
-
"SENT_AN_IMAGE": "envió una imagen",
|
|
71
|
-
|
|
72
70
|
"LABEL_PRECHAT_USER_FULLNAME": "Nombre completo",
|
|
73
71
|
"LABEL_PRECHAT_USER_EMAIL": "Correo electrónico",
|
|
74
72
|
"LABEL_PRECHAT_USER_EMAIL_ERROR": "Dirección de correo electrónico no válida",
|
|
@@ -84,5 +82,10 @@
|
|
|
84
82
|
"LABEL_LAST_ACCESS": "ultimo acceso",
|
|
85
83
|
"LABEL_TO": "a",
|
|
86
84
|
"ARRAY_DAYS": ["Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado", "Domingo"],
|
|
87
|
-
|
|
85
|
+
|
|
86
|
+
"SENT_AN_ATTACHMENT": "envió un archivo adjunto",
|
|
87
|
+
"SENT_AN_IMAGE": "envió una imagen",
|
|
88
|
+
|
|
89
|
+
"LABEL_PREVIEW": "Avance",
|
|
90
|
+
"SWITCH_TO":"O cambiar a:"
|
|
88
91
|
}
|
package/src/assets/i18n/fr.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
|
-
"LABEL_TU": "",
|
|
3
2
|
"LABEL_PLACEHOLDER": "Écrivez votre question ...",
|
|
4
3
|
"LABEL_START_NW_CONV": "Nouvelle conversation",
|
|
4
|
+
"LABEL_WHATSAPP": "Contactez-nous",
|
|
5
5
|
"LABEL_SELECT_TOPIC": "Sélectionnez un sujet",
|
|
6
6
|
"LABEL_COMPLETE_FORM": "Remplissez le formulaire pour démarrer une conversation avec le prochain agent disponible.",
|
|
7
7
|
"LABEL_FIELD_NAME": "Prenom",
|
|
8
8
|
"LABEL_ERROR_FIELD_NAME": "Nom demandé (minimum 2 caractères).",
|
|
9
9
|
"LABEL_FIELD_EMAIL": "Email",
|
|
10
10
|
"LABEL_ERROR_FIELD_EMAIL": "Entrer une adresse email valide.",
|
|
11
|
+
"LABEL_ERROR_FIELD_REQUIRED": "Champ obligatoire",
|
|
11
12
|
"LABEL_WRITING": "écrit ...",
|
|
12
13
|
"LABEL_SEND_NEW_MESSAGE": "Envoyez un nouveau message",
|
|
13
14
|
"AGENT_NOT_AVAILABLE": " Hors ligne",
|
|
@@ -15,7 +16,7 @@
|
|
|
15
16
|
"GUEST_LABEL": "Hôte",
|
|
16
17
|
"ALL_AGENTS_OFFLINE_LABEL": "Tous les opérateurs sont actuellement hors ligne",
|
|
17
18
|
"LABEL_LOADING": "Chargement en cours ...",
|
|
18
|
-
"CALLOUT_TITLE_PLACEHOLDER": "Besoin d'aide?",
|
|
19
|
+
"CALLOUT_TITLE_PLACEHOLDER": "🖐 Besoin d'aide?",
|
|
19
20
|
"CALLOUT_MSG_PLACEHOLDER": "Cliquez ici et commencez à discuter avec nous!",
|
|
20
21
|
"CUSTOMER_SATISFACTION": "Évaluation des services",
|
|
21
22
|
"YOUR_OPINION_ON_OUR_CUSTOMER_SERVICE": "votre avis sur notre service client",
|
|
@@ -33,8 +34,9 @@
|
|
|
33
34
|
"BUTTON_CLOSE_TO_ICON": "Minimisez le chat",
|
|
34
35
|
"BUTTON_EDIT_PROFILE": "Modifier le profil",
|
|
35
36
|
"RATE_CHAT": "évaluer la conversation",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
37
|
+
"WELCOME_TITLE": "Salut, bienvenue à Tiledesk 👋",
|
|
38
|
+
"WELCOME_MSG": "Comment pouvons-nous vous aider?",
|
|
39
|
+
"WELCOME": "Bienvenue",
|
|
38
40
|
"OPTIONS": "options",
|
|
39
41
|
"SOUND_OFF": "Sound off",
|
|
40
42
|
"SOUND_ON": "Sound on",
|
|
@@ -53,6 +55,7 @@
|
|
|
53
55
|
"CLOSE_CHAT": "Fermer le chat",
|
|
54
56
|
"MINIMIZE":"Minimiser",
|
|
55
57
|
"MAXIMIZE":"Maximiser",
|
|
58
|
+
|
|
56
59
|
"INFO_SUPPORT_USER_ADDED_SUBJECT":"toi",
|
|
57
60
|
"INFO_SUPPORT_USER_ADDED_YOU_VERB":"ont été ajoutés à ",
|
|
58
61
|
"INFO_SUPPORT_USER_ADDED_COMPLEMENT":"rejointe",
|
|
@@ -63,11 +66,6 @@
|
|
|
63
66
|
"INFO_SUPPORT_MEMBER_LEFT_GROUP":"supprimé du groupe",
|
|
64
67
|
"INFO_SUPPORT_MEMBER_ABANDONED_GROUP":"a quitté la conversation",
|
|
65
68
|
"INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU": "Une nouvelle demande de support vous a été attribuée",
|
|
66
|
-
"TICKET_TAKING":"La demande a été reçue et le personnel d'assistance la traite.\nPour ajouter d'autres commentaires, répondez à cet e-mail.",
|
|
67
|
-
|
|
68
|
-
"LABEL_ERROR_FIELD_REQUIRED": "Champ obligatoire",
|
|
69
|
-
"SENT_AN_ATTACHMENT": "envoyé une pièce jointe",
|
|
70
|
-
"SENT_AN_IMAGE": "envoyé une image",
|
|
71
69
|
|
|
72
70
|
"LABEL_PRECHAT_USER_FULLNAME": "Nom complet",
|
|
73
71
|
"LABEL_PRECHAT_USER_EMAIL": "E-mail",
|
|
@@ -84,5 +82,10 @@
|
|
|
84
82
|
"LABEL_LAST_ACCESS": "dernier accès",
|
|
85
83
|
"LABEL_TO": "à",
|
|
86
84
|
"ARRAY_DAYS": ["Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche"],
|
|
87
|
-
|
|
85
|
+
|
|
86
|
+
"SENT_AN_ATTACHMENT": "envoyé une pièce jointe",
|
|
87
|
+
"SENT_AN_IMAGE": "envoyé une image",
|
|
88
|
+
|
|
89
|
+
"LABEL_PREVIEW": "Aperçu",
|
|
90
|
+
"SWITCH_TO":"Ou passer à:"
|
|
88
91
|
}
|
package/src/assets/i18n/it.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
|
-
"LABEL_TU": "",
|
|
3
2
|
"LABEL_PLACEHOLDER": "Scrivi la tua domanda...",
|
|
4
3
|
"LABEL_START_NW_CONV": "Nuova conversazione",
|
|
4
|
+
"LABEL_WHATSAPP": "Contattaci",
|
|
5
5
|
"LABEL_SELECT_TOPIC": "Seleziona un argomento",
|
|
6
6
|
"LABEL_COMPLETE_FORM": "Completa il form per iniziare una conversazione con il prossimo agente disponibile.",
|
|
7
7
|
"LABEL_FIELD_NAME": "Nome",
|
|
8
8
|
"LABEL_ERROR_FIELD_NAME": "Nome richiesto (minimo 2 caratteri).",
|
|
9
9
|
"LABEL_FIELD_EMAIL": "Email",
|
|
10
10
|
"LABEL_ERROR_FIELD_EMAIL": "Inserisci un indirizzo email valido.",
|
|
11
|
+
"LABEL_ERROR_FIELD_REQUIRED": "Campo richiesto",
|
|
11
12
|
"LABEL_WRITING": "sta scrivendo...",
|
|
12
13
|
"LABEL_SEND_NEW_MESSAGE": "Invia un nuovo messaggio",
|
|
13
14
|
"AGENT_NOT_AVAILABLE": " Offline",
|
|
@@ -15,7 +16,7 @@
|
|
|
15
16
|
"GUEST_LABEL": "Ospite",
|
|
16
17
|
"ALL_AGENTS_OFFLINE_LABEL": "Tutti gli operatori sono offline al momento",
|
|
17
18
|
"LABEL_LOADING": "Caricamento...",
|
|
18
|
-
"CALLOUT_TITLE_PLACEHOLDER": "Bisogno di aiuto?",
|
|
19
|
+
"CALLOUT_TITLE_PLACEHOLDER": "🖐 Bisogno di aiuto?",
|
|
19
20
|
"CALLOUT_MSG_PLACEHOLDER": "Clicca qui e inizia a chattare con noi!",
|
|
20
21
|
"CUSTOMER_SATISFACTION": "Valutazione servizio",
|
|
21
22
|
"YOUR_OPINION_ON_OUR_CUSTOMER_SERVICE": "il tuo giudizio sul nostro servizio clienti",
|
|
@@ -33,8 +34,9 @@
|
|
|
33
34
|
"BUTTON_CLOSE_TO_ICON": "Riduci a icona la chat",
|
|
34
35
|
"BUTTON_EDIT_PROFILE": "Modifica profilo",
|
|
35
36
|
"RATE_CHAT": "Valuta chat",
|
|
36
|
-
"
|
|
37
|
-
"
|
|
37
|
+
"WELCOME_TITLE": "Ciao, benvenuto su Tiledesk 👋",
|
|
38
|
+
"WELCOME_MSG": "Come possiamo aiutarti?",
|
|
39
|
+
"WELCOME": "Benvenuto",
|
|
38
40
|
"OPTIONS": "opzioni",
|
|
39
41
|
"SOUND_OFF": "Suono spento",
|
|
40
42
|
"SOUND_ON": "Suono acceso",
|
|
@@ -53,6 +55,7 @@
|
|
|
53
55
|
"CLOSE_CHAT": "Chiudi chat",
|
|
54
56
|
"MINIMIZE":"Minimizza",
|
|
55
57
|
"MAXIMIZE":"Massimizza",
|
|
58
|
+
|
|
56
59
|
"INFO_SUPPORT_USER_ADDED_SUBJECT":"tu",
|
|
57
60
|
"INFO_SUPPORT_USER_ADDED_YOU_VERB":"sei stato aggiunto ",
|
|
58
61
|
"INFO_SUPPORT_USER_ADDED_COMPLEMENT":"si è unito",
|
|
@@ -63,11 +66,6 @@
|
|
|
63
66
|
"INFO_SUPPORT_MEMBER_LEFT_GROUP":"ha lasciato il gruppo",
|
|
64
67
|
"INFO_SUPPORT_MEMBER_ABANDONED_GROUP": "ha abbandonato la conversazione",
|
|
65
68
|
"INFO_A_NEW_SUPPORT_REQUEST_HAS_BEEN_ASSIGNED_TO_YOU": "Una nuova richiesta di supporto è stata assegnata a te",
|
|
66
|
-
"TICKET_TAKING":"La richiesta è stata ricevuta e il personale di assistenza se ne sta occupando.\nPer aggiungere ulteriori commenti, rispondi a questa email.",
|
|
67
|
-
|
|
68
|
-
"LABEL_ERROR_FIELD_REQUIRED": "Campo richiesto",
|
|
69
|
-
"SENT_AN_ATTACHMENT": "ha inviato un allegato",
|
|
70
|
-
"SENT_AN_IMAGE":"ha inviato un'immagine",
|
|
71
69
|
|
|
72
70
|
"LABEL_PRECHAT_USER_FULLNAME": "Nome completo",
|
|
73
71
|
"LABEL_PRECHAT_USER_EMAIL": "E-mail",
|
|
@@ -84,5 +82,10 @@
|
|
|
84
82
|
"LABEL_LAST_ACCESS": "ultimo accesso",
|
|
85
83
|
"LABEL_TO": "a",
|
|
86
84
|
"ARRAY_DAYS": ["Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato", "Domenica"],
|
|
87
|
-
|
|
85
|
+
|
|
86
|
+
"SENT_AN_ATTACHMENT": "ha inviato un allegato",
|
|
87
|
+
"SENT_AN_IMAGE":"ha inviato un'immagine",
|
|
88
|
+
|
|
89
|
+
"LABEL_PREVIEW": "Anteprima",
|
|
90
|
+
"SWITCH_TO":"Oppure passa a:"
|
|
88
91
|
}
|
|
@@ -1001,7 +1001,6 @@ class Chat21Client {
|
|
|
1001
1001
|
this.client.on('connect', // TODO if token is wrong it must reply with an error!
|
|
1002
1002
|
() => {
|
|
1003
1003
|
if (this.log) {
|
|
1004
|
-
console.log("Chat client connected. User:" + user_id)
|
|
1005
1004
|
console.log("Chat client connected. this.connected:" + this.connected)
|
|
1006
1005
|
}
|
|
1007
1006
|
if (!this.connected) {
|