Personnalisation des canaux de chat en utilisant JavaScript

Vous pouvez personnaliser le chat en directFermé Les agents et les contacts interagissent en temps réel et la messagerie instantanéeFermé Chat asynchrone dans lequel les contacts envoient un message de chat à tout moment et attendent une réponse avec JavaScript. CXone fournit des personnalisations par défaut et les appels d'API JavaScript corrélés. Vous devez inclure ces appels API dans la balise de script qui ajoute le chat à votre site Web. Pour ajouter ces fonctionnalités, vous devez avoir accès au code de votre site Web. Cette page explique où ajouter le code JavaScript et les lignes de code exactes à inclure. Vous devez également être familiarisé avec JavaScript ou le développement Web pour utiliser en toute confiance les informations contenues dans cette page.

Vous pouvez personnaliser les aspects suivants de vos canauxFermé Le moyen utilisé par les contacts pour interagir avec les agents ou les robots. Le canal peut être vocal, e-mail, chat, réseaux sociaux, etc. de chat :

  • Comportement de chat : personnalisez la façon dont la fenêtre de discussion se comporte. Cela inclut l'ouverture et la fermeture de la fenêtre de discussion ou l'activation du mode jeu. Le mode jeu permet aux clients de jouer au jeu Snake en attendant un agent.
  • Informations sur le chat : personnalisez les informations à afficher dans la fenêtre de chat. Cela inclut des éléments tels que le nom du client, l'image de l'agent ou l'état de l'activité.
  • Champs, libellés et phrases personnalisés : définissez les champs personnalisés ou personnalisez les étiquettes de champ. Vous pouvez également configurer texte alternatif pour les messages automatisés affichés aux contacts.
  • Apparence de la fenêtre de chat : personnalisez l'aspect de la fenêtre de chat. Vous pouvez modifier des éléments tels que la taille et la position de la fenêtre sur la page Web.
  • CSS personnalisé : définissez le code CSS personnalisé pour la fenêtre de discussion.
  • Actions proactives : personnalisez l'expérience grâce à des actions proactives créées à partir des comportements observés de l'utilisateur.
  • Autres fonctions : les autres éléments que vous pouvez configurer incluent :

Actuellement, toutes les API JavaScript sont compatibles avec le chargeur Brand Embassy pour chaque appel. Si vous utilisez le chat CXone sur votre site Web, tous ces appels prennent également en charge un nouveau chargeur CXone. À terme, toutes les API JavaScript de chat utiliseront le chargeur CXone au lieu de Brand Embassy.

La structure de l’appel JavaScript peut varier selon le chargeur utilisé. Vous ne pouvez pas afficher les deux structures en même temps. Utilisez uniquement l’une ou l’autre selon le chargeur utilisé.

Si vous utilisez CXone Guide pour implémenter le chat sur votre site Web, utilisez le chargeur CXone. Tous les appels sur cette page ne sont pas pris en charge dans Guide, mais la documentation de CXone Guide donne la liste des appels JavaScript qui ne sont pas pris en charge.

Si vous utilisez le chargeur CXone, que ce soit dans le cadre du chat numérique ou de Guide, structurez les appels de la façon suivante :


            cxone('chat','enableChatAlwaysOnline');

Si vous utilisez le chargeur Brand Embassy, structurez les appels ainsi :


            brandembassy('enableChatAlwaysOnline');

Ajout des appels JavaScript à un canal de chat

Si vous ne l'avez pas encore fait, configurer un canal de chat en direct ou de messagerie instantanée. Testez le canal pour vous assurer qu'il fonctionne avec les paramètres par défaut avant d'ajouter des personnalisations. Configurez les personnalisations de chat dans un environnement de test avant de les publier dans votre environnement de production. Cela aidera à minimiser les perturbations pour les visiteurs de votre site Web. Cela vous aidera également à vous assurer que vos personnalisations fonctionnent comme prévu.

Copiez le script et les appels d'API exactement comme indiqué. Tout changement inattendu pourrait entraîner un dysfonctionnement de votre chaîne.

  1. Cliquez sur le sélecteur d'applications et sélectionnezACD.
  2. Aller àDigital >Points de contact numériques.

  3. Dans la section Vos canaux, cliquez sur Script du site Web.
  4. Copiez le code JavaScript de la page et collez-le dans un programme d'édition de texte tel que Notepad++. Veillez à inclure les balises <script> d'ouverture et de fermeture.
  5. Dans Notepad++, juste au-dessus de la balise de fermeture </script> du code que vous avez collé, ajoutez les appels JavaScript que vous voulez utiliser. Dans l'illustration suivante, le commentaire indique où ajouter des appels. Les appels pris en charge que vous pouvez utiliser sont décrits dans le reste de cette page.

  6. Copiez et coller des l'intégralité du script, y compris les balises <script> d'ouverture et de fermeture, dans l'en-tête d'une page de votre site Web.

  7. Ouvrez la page modifiée et envoyez des messages de chat de test pour vous assurer que vos personnalisations fonctionnent comme prévu.

  8. Une fois qu'elles ont été testées et fonctionnent comme prévu, copiez le script final dans l'en-tête de chaque page devant comporter le widget de chat.

Appels JavaScript contrôlant le comportement de chat

Les appels de cette section vous permettent de modifier le comportement des fenêtres de discussion.

Ouvrir la fenêtre de discussion

Ouvre une fenêtre de discussion automatiquement. Le comportement par défaut est que les fenêtres de discussion s'ouvrent lorsqu'un contact clique sur l'icône de discussion.


            brandembassy('openChatWindow');

Fermer la fenêtre de chat

Ferme la fenêtre de chat automatiquement. Le comportement par défaut est que les fenêtres de chat se ferment lorsqu'un contact clique sur l'icône de chat.


            brandembassy('hideChatWindow');

Chat toujours en ligne

Affiche la fenêtre de chat comme si des agents étaient disponibles, même si aucun agent n'est en ligne.


            brandembassy('chat','enableChatAlwaysOnline');

Persistance des champs personnalisés du chat précédent

Vous pouvez choisir si les champs personnalisés doivent être persistants ou supprimés définitivement du stockage local une fois l’interaction en cours. Cela permet de sélectionner les champs personnalisés qui continuent à s’afficher lors de chaque interaction avec un contact. 'field_id' fait référence à la valeur du champ Ident lors de la création d’un champ personnalisé.


        cxone('chat','enablePrecontactSurveyFieldAutoFill'('field id');

Envoi de données postback à partir de Carte adaptative

Les actions et robots Studio peuvent envoyer des Carte adaptatives aux contacts via le chat. Pour que le chat numérique envoie des données postback à Studio ou un robot, vous devez activer un gestionnaire. Un gestionnaire de Carte adaptative fonctionne dans le robot ou l’action Studio pour gérer les engagements avec Carte adaptatives et y répondre. Le gestionnaire est activé lorsqu’un utilisateur interagit avec des composants sur une Carte adaptative, notamment en cas de clic sur un bouton ou de sélection d’une option dans un menu déroulant. Le gestionnaire déchiffre l’entrée de l’utilisateur et détermine la réponse la mieux adaptée ou l’action à exécuter. Ajoutez la commande de gestionnaire par défaut et envoyez la commande de message, de sorte que Studio ou les robots puissent répondre en conséquence ou stocker les données de la Carte adaptative en prévision des rapports. Vous pouvez également remplacer le gestionnaire par défaut par une commande de gestionnaire personnalisé.

Ajoutez la commande du gestionnaire par défaut de Carte adaptative :


            adaptiveCardOnExecuteAction(actionId: string, callback: (action: node_modules/adaptivecards/src/card-elements.ts::Action) => void)

Envoyer la commande de message :


            sendMessage(messageContent: MessageContent)

Créer une commande de gestionnaire personnalisé :


					{
					"acType": "Action.Execute", // type of action Action.Execute or Action.Submit
					"acVerb": "null|string", // only if `verb` is provided in the Action
					"acActionId": "null|string" // only if id is provided in the Action
					"acData": { // `data` are provided in Action
					"firstName": "John",
					"lastName": "Doe",
					"_messageText": "Submitted something for you"
					}
			}

Définir le code d'autorisation

Définit un code d'autorisation pour le flux OAuth. OAuth est un protocole d'authentification. Il permet de laisser une application interagir avec une autre à votre place, sans révéler vos mots de passe. Doit être appelé avant l'initialisation du chat.


            brandembassy('setAuthorizationCode', 'authorization_code');

Démarrage automatique d'une nouvelle session de chat

Crée une nouvelle session de messagerie instantanéeFermé Chat asynchrone dans lequel les contacts envoient un message de chat à tout moment et attendent une réponse ou de chat en directFermé Les agents et les contacts interagissent en temps réel si aucune n'est en cours. Utilisez cet appel sur les pages à faible trafic de votre site Web pour éviter de submerger vos agents de contacts.

Digital Experience crée un nouveau cas et l'ajoute à la file d'attente lorsque le premier message de la session de chat est envoyé. Un message masqué et automatisé est envoyé au nom du client lorsque la session de chat démarre. Cela réduit le temps d'attente des contacts pour un agent en démarrant le processus plus tôt. Les sessions de chat démarrent lorsqu'un contact clique sur l'icône de chat pour commencer une conversation ou lorsque la fenêtre de chat s'ouvre pour les sessions de chat démarrées automatiquement. Bien que le message initial soit caché au client, l'agent peut le voir.

Vous pouvez personnaliser le texte du message initial masqué.

Le démarrage automatique d'une session de chat ignore le formulaire d'enquête avant contact. Pour cette raison, vous devez utiliser d'autres méthodes pour collecter des informations sur les contacts. Par exemple, vous pouvez demander aux agents de saisir manuellement les informations dans la carte client. Vous pouvez également configurer authentification client à l'aide d'une intégration OAuth.

L'acheminement des cas démarrés automatiquement s'effectue en fonction des files d'attente de routageFermé Le système utilise des files d'attente de routage pour déterminer vers quels agents acheminer les requêtes. Votre administrateur système crée des files d'attente de routage afin que certains cas soient acheminés vers des agents ayant une expertise dans ce type de cas. configurées dans Digital Experience. Pour les sessions de chat en direct, si aucun agent n'est disponible, la fenêtre de chat affiche un message En attente d'un agent disponible.

Pour démarrer automatiquement une session de chat, utilisez ces appels dans l'ordre indiqué :


            brandembassy('openChatWindow');

brandembassy('autoStartSession');

Si vous ajoutez des appels supplémentaires au script,autoStartSessiondoit toujours être le dernier appel dans le script. Par exemple :


            // set customer name (as this is required field)
brandembassy('setCustomerName', 'Elizabeth');

// open chat window so user can start to chat
brandembassy('openChatWindow');

// and finally start the new chat session (without the pre-chat form)
brandembassy('autoStartSession');

Activation de sessions de chat concurrentes

Vous pouvez autoriser les contacts à ouvrir plusieurs sessions de chat dans le même navigateur. S’ils utilisent un chat actif dans l’un des onglets du navigateur, cela permet au contact de lancer un deuxième chat dans un nouvel onglet ou une nouvelle fenêtre.

Pour activer ce comportement, vous devez spécifier le mode de stockage des données de chat. Deux options sont possibles :

  • localStorage : les données persistent dans le navigateur après la fermeture d’un onglet ou d’une fenêtre. Il s’agit de la méthode de stockage par défaut. Si plusieurs sessions de chat sont ouvertes en même temps dans différents onglets, elles sont considérées comme formant la même interaction. La conversation du chat et l’expérience sont identiques dans tous les onglets.

  • sessionStorage : les données sont stockées pour l’onglet ou la fenêtre voulue, puis sont effacées lors de la fermeture. L’utilisateur peut créer plusieurs sessions de chat dans différents onglets ou différentes fenêtres. La session de chat de chaque onglet est traitée comme une interaction unique.

Pour activer des sessions de chat concurrentes, ajoutez la clé storageType avec la valeur sessionStorage, comme indiqué dans l’exemple suivant.

Si vous utilisez l’option localStorage et souhaitez toujours supprimer définitivement l’historique de conversation, vous pouvez créer un écouteur d’événements qui va supprimer customerID à la fin de la session de chat.


brandembassy(
	'init',
	'MY_BRAND_ID_123',
	'MY_CHANNEL_ID_321',
	undefined,
	{
		storageType: 'sessionStorage',
	},
);

Suppression définitive de l’historique de conversation

Supprime l'historique de la conversation à la fin d'une session de chat. Cela peut être utile si vous utilisez l’option par défaut de stockage du chat, à savoir le stockage local. Cette option de stockage conserve les données après la fermeture des instances du navigateur. Dans ce cas, vous pouvez supprimer spécifiquement l’historique de conversation en effaçant customerID du stockage local. L’exemple suivant crée un écouteur d’événements qui recherche l’événement caseStatusChanged dans le chat. Il indique que la session de chat est terminée. Ensuite, la commande removeItem est appelée, ce qui supprime customerID du stockage local du navigateur.


brandembassy('onPushUpdate', ['CaseStatusChanged'], pushUpdatePayload => { 
	if (typeof pushUpdatePayload === 'undefined' || typeof pushUpdatePayload.data === 'undefined') { 
		return; 
	}  
	const { status } = pushUpdatePayload.data.case || {};   
	if (typeof status === 'undefined') { 
		return; 
	}   
	// When a previous case has been closed, this will set the custom fields again. 
	if (status === 'closed') { 
		localStorage.removeItem('_BECustomerID') 
		); 
	} 
}); 

Personnaliser le message de contact automatisé initial

Digital Experience crée un nouveau cas et l'ajoute à la file d'attente lorsque le premier message de la session de chat est envoyé. Un message masqué et automatisé est envoyé au nom du client lorsque la session de chat démarre. Cela réduit le temps d'attente des contacts pour un agent en démarrant le processus plus tôt. Les sessions de chat démarrent lorsqu'un contact clique sur l'icône de chat pour commencer une conversation ou lorsque la fenêtre de chat s'ouvre pour les sessions de chat démarrées automatiquement. Bien que le message initial soit caché au client, l'agent peut le voir.

Le message par défaut est le texte du bouton sur lequel le client clique pour démarrer la conversation. Vous pouvez personnaliser le texte du message initial automatisé de trois manières :

  • Remplacez le texte du bouton par défaut.

                brandembassy('sendFirstMessageAutomatically', 'Hello');
  • Modifiez le message initial de manière dynamique.

                brandembassy('setFirstAutomatedMessageContent', 'Hello, I have a question');

Rendre le message automatisé initial visible pour les contacts

Si vous souhaitez que le contact puisse voir le message automatisé initial, ajoutez cet appel à votre script :


            brandembassy('hideFirstSentMessage', false);

Retarder la création de cas

Digital Experience crée un nouveau cas et l'ajoute à la file d'attente lorsque le premier message de la session de chat est envoyé. Un message masqué et automatisé est envoyé au nom du client lorsque la session de chat démarre. Cela réduit le temps d'attente des contacts pour un agent en démarrant le processus plus tôt. Les sessions de chat démarrent lorsqu'un contact clique sur l'icône de chat pour commencer une conversation ou lorsque la fenêtre de chat s'ouvre pour les sessions de chat démarrées automatiquement. Bien que le message initial soit caché au client, l'agent peut le voir.

Vous pouvez configurer Digital Experience pour attendre le premier message réel du contact avant de créer une requête à l'aide de cet appel :


            brandembassy('sendFirstMessageAutomatically', false);

Activer le mode jeu

Permet aux contacts de jouer au jeu Snake en attendant un agent.


            brandembassy('allowGameMode');

Enquête de satisfaction automatisée

Une enquête de satisfaction peut être automatiquement détectée et affichée dans une fenêtre contextuelle. Cela permet de contrôler l'automatisation des enquêtes de satisfaction.


            brandembassy('automatedSatisfactionSurveyModal', 'true');
brandembassy('automatedSatisfactionSurveyModal', 'false');
//if not defined, the default is 'true'

Appels JavaScript d'informations sur le chat

Ces appels vous permettent de personnaliser les informations disponibles pour les contacts lors d'une session de chat.

Obtenir l'ID de client

Renvoie l'identificateur unique du client dans le chat.


            brandembassy('getCustomerIdentityId');

Masquer le formulaire d'enquête avant contact

Le formulaire d'enquête avant contact apparaît au début d'une session de chatFermé Chat asynchrone dans lequel les contacts envoient un message de chat à tout moment et attendent une réponse. Il collecte des informations sur le contact, telles que son nom. Si vous le souhaitez, vous pouvez masquer le formulaire d'enquête avant contact et faire apparaître la fenêtre de chat dès qu'un contact démarre une session de chat.


            brandembassy('hidePreSurvey');

Masquer le compteur de file d'attente

Le compteur de file d'attente indique au contact dans combien de temps un agent pourra l'aider en fonction de sa position dans la file d'attente de l'agent. Vous pouvez masquer le compteur de file d'attente dès que le contact a été transféré à un agent. Cela permet aux agents de supprimer des cartes clients de leur boîte de réception sans que les contacts s'en aperçoivent.


            brandembassy('hideQueueCounterAfterAssignment');
brandembassy('hideAssignedAgent');
brandembassy('hideSystemMessages');

Coupure du son des notifications de chat

Vous permet de couper ou rétablir le son des notifications de chat. Le son des notifications de chat est activé par défaut. Cela doit être configuré quels que soient les autres paramètres audio de chat. Vous pouvez définir cette valeur sur 'false’ pour rétablir le son des notifications.


            brandembassy('muteAudioNotification', 'true');
// OR
brandembassy('muteAudioNotification');

Ignorer la langue du navigateur pour les traductions

Ignore le choix de langue ou de variante de l’utilisateur pour le remplacer par une traduction spécifique. Par exemple, vous pouvez vous assurer que certaines parties du texte s’affichent toujours en français, quelles que soient les options de langue du contact dans son navigateur.


            brandembassy('init', 'brandId', 123, 'locale');

Définir l'état de l'activité

Modifie le message dans la barre d'activité. Par exemple, vous pouvez l'utiliser pour communiquer votre temps de réponse pour une session de messagerie instantanée. Cela peut être utile car la messagerie instantanée est une forme de discussion asynchrone, de sorte que les contacts peuvent devoir attendre d'avoir des nouvelles d'un agent.


            brandembassy('setStatusMessage', 'We typically reply within 3 hours.');

Définir l'image de l'agent

Modifie dynamiquement l'image de l'agent affichée dans la fenêtre de discussion. Par défaut, Digital Experience utilise l'image dans le profil de l'agent. Lorsque vous incluez cet appel dans votre script, il utilise l'image spécifiée par l'URL dans l'extrait de code. Remplacez l'exemple d'URL par l'URL de l'image que vous souhaitez que le chat utilise.


            brandembassy('setAgentImage', 'http://classics.com/images/agents/elizabeth_bennet.png');

Définir l'ID de client

Définit un identificateur unique pour le client participant au chat.


            brandembassy('setCustomerId', 'customer_id');

Définir le nom du client

Le nom du client est un champ du formulaire d'enquête avant contact, que les contacts doivent renseigner avant de discuter avec un agent sur un canal de chatFermé Chat asynchrone dans lequel les contacts envoient un message de chat à tout moment et attendent une réponse. Cet appel remplit le champ de façon dynamique.


            brandembassy('setCustomerName', 'Elizabeth');

Définir le format de date

Peut être défini de façon à utiliser un format de date absolue (03/12/2035) ou relatif (aujourd'hui, lundi).


            brandembassy('setDateFormat', 'date_format');
// date_format can be 'absolute' or 'relative'

Définir les paramètres régionaux

Définit les paramètres régionaux pour les traductions dans la fenêtre de chat.


            brandembassy('setLocale', 'locale');
 

Afficher les informations sur le cas

Seulement pour les canaux messagerie instantanéeFermé Chat asynchrone dans lequel les contacts envoient un message de chat à tout moment et attendent une réponse. Affiche les informations sur le cas au contact.


            brandembassy('showCaseInfo');

Afficher/Masquer le bouton Envoyer la transcription

Si vous rendez le bouton Envoyer transcription visible, vous devez configurer le canal de chat pour permettre aux contacts de s'envoyer la transcription du chat à eux-mêmes. Configurez cette option pour la messagerie instantanée ou le chat en direct.


            brandembassy('hideSendTranscript');
brandembassy('showSendTranscript');

Afficher/masquer les messages système

Affiche ou masque les messages système, tels que l'historique d'affectation d'un agent.


            brandembassy('chat','hideSystemMessages');
brandembassy('showSystemMessages');
 

Conditions d'utilisation

Vous pouvez mettre un document de conditions d'utilisation à la disposition des contacts depuis la fenêtre de discussion. Cette fonction ajoute un bouton à la fenêtre. Vous pouvez personnaliser l'étiquette et le style du bouton, ainsi que ce qui se passe lorsque les contacts cliquent dessus. L'action au clic peut afficher les conditions d'utilisation comme :

  • Une fenêtre interne
  • Un lien externe

            // Internal Modal Window
brandembassy('showTermsOfUse', 'Show terms of Use', 'modal' , 'Our terms of use are ...');

// External Link
brandembassy('showTermsOfUse', 'Show terms of Use', 'externalLink' , 'http://yourdomain.com/terms-of-use');

// If you want to explicitely disable this feature, you can use
brandembassy('hideTermsOfUse');

Pour personnaliser l'aspect du bouton ou de la fenêtre interne, utilisez les appels d'API CSS décrits sur cette page.

Champs, balises et expressions personnalisés

Créer et remplir des champs personnalisés

Les champs personnalisés que vous pouvez utiliser avec cet appel sont les mêmes que ceux que vous pouvez utiliser dans une carte client. Si vous utilisez ces appels avant d'ouvrir une fenêtre de chat, les champs du formulaire avant contact reprennent les données que vous aviez incluses dans l'appel JavaScript.

Pour définir la valeur du champ personnalisé d'un cas :


            brandembassy('setCaseCustomField', 'ident_of_custom_field', 'value_of_custom_field');

Pour définir la valeur d'un champ personnalisable carte client :


            brandembassy('setCustomerCustomField', 'ident_of_custom_field', 'value_of_custom_field');

Personnaliser les libellés et les phrases de chat

Vous pouvez personnaliser de nombreux libellés et phrases que les canaux chat numériques utilisent, ainsi que définir les personnalisations. Si vous devez modifier dynamiquement les phrases ou les libellés d'écran, utilisez les appels JavaScript suivants.

Pour modifier un seul message ou libellé :


            brandembassy('setTranslation', 'key', 'your translation');

Pour modifier plusieurs messages ou libellés :


            brandembassy('setTranslations', {
   key1: 'your custom label',
   key2: 'your custom message'
});

Traduction de champs personnalisés

Vous pouvez traduire les champs personnalisés affichés dans la fenêtre de chat.


            brandembassy('chat', 'setCustomTranslations', {
    myCustomFieldATranslationKey: "Custom field value A",
    myCustomFieldBTranslationKey: "Custom field value B",
});

Appels d'apparence de la fenêtre de chat

Vous pouvez modifier l'apparence de la fenêtre de discussion.

Icône Fermer le chat

Lorsque cette valeur est définie sur vrai, une icône X s’affiche dans la fenêtre à la place de l’option Quitter la conversation dans le menu des paramètres.


            brandembassy('enableCloseIcon', true);

Masquer l'agent assigné


            brandembassy('hideAssignedAgent');

Masquer l'en-tête


            brandembassy('hideHeader');

Masquer les pop-ups


            brandembassy('hidePopups');

Afficher l'avatar du client


            brandembassy('showCustomerAvatar');

Afficher le bouton d'envoi


            brandembassy('chat','showSendButton');

Taille

Personnalise la largeur et la hauteur de la fenêtre de discussion. Vous pouvez utiliser des unités absolues ou relatives prises en charge par la spécification CSS.


            brandembassy('setWindowWidth', '100%');
brandembassy('setWindowHeight', '100%');

Mode d'affichage complet


            brandembassy('setFullDisplay');
// OR
brandembassy('chat','setWindowWidth', '100%');
brandembassy('chat','setWindowHeight', '100%');

Position et décalage

L'appel setPositionX définit le côté gauche ou droit de l'écran comme position de départ. Les appels setOffsetX et setOffsetY définissent de combien de pixels la fenêtre de discussion est décalée horizontalement et verticalement par rapport au point de départ, respectivement.


            // set horizontal starting position
brandembassy('setPositionX', 'right');
													
// set horizontal and vertical offset
brandembassy('setOffsetX', '40'); // default = 20
brandembassy('setOffsetY', '40'); // default = 20

Définir la limite de caractères pour la boîte de réponse


            brandembassy('setReplyBoxLimit', '280'); // default = null

CSS personnalisé avec sélecteurs de données

Vous pouvez personnaliser l'apparence de la fenêtre de chat en ajoutant vos propres feuilles de style CSS. Spécifiez la partie de la fenêtre de chat que vous voulez mettre en forme avec un attribut data-selector . La liste déroulante ci-dessous contient une liste de tous les composants que vous pouvez sélectionner avec l'attribut data-selector. Les sélecteurs de données vous permettent de spécifier la partie de la fenêtre de discussion à laquelle vous souhaitez appliquer le CSS personnalisé. Après le data-selector, ajoutez votre style à l'intérieur des accolades. Si vous souhaitez appliquer un style à plusieurs éléments, vous devez ajouter tous vos calques CSS dans un seul appel JavaScript. Si vous utilisez le même appel JavaScript plusieurs fois, le dernier appel JavaScript remplace tous les calques CSS précédents. Vous pouvez également personnaliser les calques CSS destinés au chat directement dans CXone.

Pour ajouter du code CSS personnalisé avec des sélecteurs de données, utilisez cet appel JavaScript comme référence :


            brandembassy('setCustomCss', '[data-selector="CUSTOMER_MESSAGE_BUBBLE"] {color: white !important; background: black !important} 
	[data-selector="CONTENT"] {background: green !important}`);

Appliquez des composants CSS personnalisés à l'aide de l'attribut sélecteur de données uniquement. Ne l’appliquez pas aux sélecteurs de classes ou d’autres parties du code JavaScript, comme dans cet exemple :

.Widget__Widget___1qQCf { background: red; }

Les composants de fenêtre peuvent être constitués de plusieurs blocs imbriqués. Les sélecteurs de composants répertoriés dans cette section nomment la racine de chaque composant. Si vous souhaitez appliquer le CSS à l'un des blocs imbriqués d'un composant, utilisez la console du développeur pour inspecter le composant afin de pouvoir sélectionner le bloc approprié.

Actions proactives

Les appels de cette section vous permettent de contacter les clients par chat en fonction de leur comportement.

Exécuter le déclencheur

Lance le déclencheur d'automatisation du workflow défini par trigger_id.


            brandembassy('executeTrigger', 'trigger_id');

Définir un événement propre au visiteur

Stocke le comportement utilisateur défini (l’événement) pour la génération de rapports. Lorsque cet appel est utilisé avec CXone Mobile SDK, event_type est remplacé par custom_event_type.


            brandembassy('setVisitorEvent', 'event_type', 'custom_event_data');

Définir la variable propre au visiteur

Stocke les informations définies par l'utilisateur pour la génération de rapports.


            brandembassy('setVisitorVariable', 'variable_identifier', 'variable_value');

Stocker les conversions

Stocke le comportement de l'utilisateur en tant que conversion pour la génération de rapports.


            brandembassy('storeConversion', 'conversion_type', 'conversion_value', 'conversion_date'); 
// conversion_date is optional, default is now

Balises d'internautes

Le contenu de cette section concerne un produit ou une fonctionnalité en version contrôlée (CR). Si vous ne faites pas partie du groupe CR et souhaitez plus d'informations, contactez votreReprésentant de compte CXone.

Vous pouvez créer des balises pour les contacts qui adoptent certains comportements sur votre site Web. Cette fonctionnalité utilise des balises de Digital Experience et nécessite Conseils.

Pour ajouter une balise à un contact :


            brandembassy('assignTag', 'tagID');

Pour supprimer une balise pour un contact.


            brandembassy('removeTag', 'tagID');

Intégration avec des applications tierces

Les appels de cette section vous permettent de recevoir des notifications push lorsque certains événements de chat se produisent.

Reconnaître les discussions actives dans la fenêtre de discussion


            brandembassy('getOngoingThreads');

Reconnaître le contact en cours dans la fenêtre de chat


            brandembassy('getOngoingContact')

Recevoir une notification push pour des événements de chat spécifiques

Pour recevoir une notification pour un événement de chat :


            brandembassy('onPushUpdate', 'event', callback);

Pour recevoir une notification pour plusieurs événements de chat :


            brandembassy('onPushUpdate', ['event', 'event', 'event'], callback);

Pour recevoir une notification pour tous les événements de chat :


            brandembassy('onAnyPushUpdate', callback);

Intégration aux applications Android ou iOS

Vous pouvez intégrer le chat numérique dans des applications Android ou iOS. L'application native doit utiliser WebView où le code d'initialisation JavaScript est ajouté. Cet exemple de code utilise le code JavaScript de cette page pour modifier l'apparence et le comportement de la fonction de chat  :


            <script async type=”text/javascript”>
  (function(i,s,o,r,g,v,a,m){g=v?g+'?v='+v:g;i['BrandEmbassy']=r;
    i[r]=i[r]||function(){(i[r].q=i[r].q||[]).push(arguments)};i[r].l=+new Date();
    a=s.createElement(o);m=s.getElementsByTagName(o)[0];a.async=1;
    a.src=g+'?'+Math.round(Date.now()/1000/3600);m.parentNode.insertBefore(a,m)
  })(window,document,'script','brandembassy','https://livechat-static.brandembassy.com/3/chat.js');

  //init of Livechat
  brandembassy(‘init’, BRAND_HASH);

  // hiding unwanted UI elements
  brandembassy('hideHeader');
  brandembassy('hidePopups');
 
  // stretching livechat to full width and height
  brandembassy('setFullDisplay');

  // Customer's name
  brandembassy('setCustomerName', 'CUSTOMER_NAME');

  // Other optional Custom Fields
  brandembassy('setCustomField', 'CUSTOM_FIELD_IDENT', 'CUSTOM_FIELD_VALUE');
    
  // Start Chat
  brandembassy('openChatWindow');
  brandembassy('autoStartSession');

</script>