Ajout de flux de dialogue personnalisés pour les intégrations
Utilisez l'éditeur JSON dans un dialogue pour accéder aux informations soumises depuis l'intégration de discussion Web.
A compter de la version d'API 2020-04-01, l'objet context qui est transmis dans le cadre de la demande d'API /message v2 contient un objet integrations. Cet objet permet de transmettre des informations
spécifiques à un seul type d'intégration dans le contexte. Pour plus d'informations, voir Variables contextuelles.
L'objet integrations est disponible uniquement dans l'API v2 de la version 2020-04-01 ou ultérieure.
Pour tirer parti de l'objet context.integrations, vous pouvez créer des variables de contexte nommées comme suit pour obtenir et définir des valeurs pour différentes intégrations :
| Type d'intégration | Syntaxe de la variable de contexte |
|---|---|
| Téléphone | $integrations.voice_telephony |
| Centre de services Salesforce à partir de la discussion Web | $integrations.salesforce |
| SMS avec Twilio | $integrations.text_messaging |
| Discussion Web (et aperçu de l'assistant) | $integrations.chat |
| Centre de services Zendesk à partir de la discussion Web | $integrations.zendesk |
Génération d'un flux de dialogue spécifique à l'intégration
Créez une boîte de dialogue unique optimisée pour utiliser les meilleures fonctions offertes par chaque canal ou interface client dans lequel elle est déployée.
Vous pouvez personnaliser la conversation comme suit :
-
Pour ajouter une branche de dialogue entière qui n'est traitée que par un type d'intégration spécifique, ajoutez la variable contextuelle de type d'intégration appropriée, telle que
$integrations.chat, à la zone If assistant recognizes du noeud racine de dialogue. -
Pour ajouter un seul noeud de dialogue qui n'est traité que par un type d’intégration spécifique, ajoutez la variable contextuelle de type d'intégration appropriée, telle que
$integrations.zendesk, à la zone If assistant recognizes du noeud enfant de dialogue. -
Pour ajouter des réponses légèrement différentes pour un seul noeud de dialogue en fonction du type d'intégration, procédez comme suit :
-
Dans la vue d'édition du noeud, cliquez sur Customize, puis définissez le commutateur Multiple conditioned responses sur On. Cliquez sur Appliquer.
-
Dans la section de réponse du noeud de dialogue, ajoutez la condition appropriée et la réponse correspondante pour chaque type de réponse personnalisé.
Les exemples suivants montrent comment spécifier un lien hypertexte dans le meilleur format pour l'intégration dans laquelle la réponse textuelle est affichée. Pour l'intégration de discussion Web, qui prend en charge le formatage Markdown, vous pouvez inclure un libellé de lien dans le texte de réponse pour rendre la réponse plus agréable. Pour l'intégration SMS avec Twilio, vous pouvez ignorer le formatage logique sur une page Web et ajouter l'URL directe.
Réponses conditionnées personnalisées Type d'intégration Condition Exemple de réponse textuelle SMS avec Twilio $integrations.text_messagingFor more information, go to https://www.ibm.com.Discussion Web $integrations.chatFor more information, go to [the ibm.com site](https://www.ibm.com).Réponse à afficher si aucune autre condition n'est remplie. trueFor more information, go to ibm.com.
-
Les types de réponses riches se comportent souvent différemment lorsqu'ils sont affichés dans différentes intégrations intégrées ou dans l'aperçu de l'assistant.
Si vous devez fournir des réponses personnalisées pour différents canaux, et que vous n'avez pas besoin de modifier votre flux de dialogue en fonction de l'intégration utilisée, vous pouvez également utiliser le channels tableau
pour cibler vos réponses à des intégrations spécifiques.
Discussion Web : Accès aux données sensibles
Si vous activez la sécurité pour la discussion Web, vous pouvez configurer votre implémentation de discussion Web afin d'envoyer des données chiffrées au dialogue. Les données utiles qui sont envoyées à partir de la discussion Web sont stockées
dans une variable contextuelle privée nommée context.integrations.chat.private.user_payload. Aucune variable privée n'est envoyée depuis le dialogue vers des intégrations. Pour plus d'informations sur la transmission de données,
voir Chiffrement de données sensibles dans la discussion Web.
Pour accéder aux données de contenu, vous pouvez faire référence à l'objet context.integrations.chat.private.user_payload de la condition de noeud de dialogue.
Vous devez connaître la structure de l'objet JSON qui est envoyé dans le contenu.
Par exemple, si vous avez transmis la valeur "mvp:true" dans le contenu JSON, vous pouvez ajouter un flux de dialogues qui recherche cette valeur afin de définir une réponse destinée uniquement aux clients VIP. Ajoutez
un noeud de dialogue avec une condition semblable à la suivante :
| Zone | Valeur |
|---|---|
| If assistant recognizes | $integrations.chat.private.user_payload.mvp |
| Assistant responds | I can help you reserve box seats at the upcoming conference! |
Discussion Web : accès aux informations du navigateur Web
Lorsque vous utilisez l'intégration de discussion Web, les informations relatives au navigateur Web que votre client utilise pour accéder à la discussion Web sont automatiquement collectées et stockées. Les informations sont stockées dans l'objet
context.integrations.chat.browser_info.
Vous pouvez concevoir votre dialogue pour tirer parti des détails sur le navigateur Web en cours d'utilisation. Les propriétés suivantes proviennent de l'objet window qui représente la fenêtre dans laquelle la discussion Web est
en cours d'exécution :
browser_name: nom du navigateur, par exemplechrome,edgeoufirefox.browser_version: version du navigateur, par exemple80.0.0.browser_OS: système d'exploitation de l'ordinateur du client, par exempleMac OS.language: code de l'environnement local par défaut du navigateur, par exempleen-US.page_url: URL complète de la page Web sur laquelle la discussion Web est intégrée. Par exemple :https://www.example.com/productsscreen_resolution: hauteur et largeur de la fenêtre du navigateur dans laquelle la page Web s'affiche. Par exemple :width: 1440, height: 900user_agent: contenu de l'en-tête de la demande d'agent utilisateur. Par exemple :Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:80.0) Gecko/20100101 Firefox/80.0client_ip_address: adresse IP de l'ordinateur du client. Par exemple :183.49.92.42
Exemple : utilisation des informations d'URL de la page dans votre dialogue
Vous pouvez intégrer la discussion Web sur plusieurs pages de votre site Web. Vous souhaitez peut-être router les transferts de discussion depuis la discussion Web vers différents agents Salesforce en fonction de la page à partir de laquelle
le client demande à parler à quelqu'un. Si le client se trouve sur la page des régimes d'assurance de votre site Web (https://www.example.com/insurance.html), vous souhaitez le diriger vers des agents de votre entreprise qui
sont experts en régimes d'assurance. Si le client se trouve sur la page Web des investissements (https://www.example.com/invest.html), vous souhaitez le diriger vers des agents de votre entreprise qui sont experts en opportunités
d'investissement. Vous pouvez ajouter plusieurs réponses conditionnées au noeud de dialogue dans lequel le transfert a lieu et ajouter une logique telle que la suivante :
Réponse conditionnée 1
- Condition :
$integrations.chat.browser_info.page_url.contains('insurance.html') - Type de réponse : Connect to human agent
- ID bouton :
Z23453e25vv(bouton de redirection vers la file d'attente des agents experts en assurance)
Réponse conditionnée 2
- Condition :
$integrations.chat.browser_info.page_url.contains('invest.html') - Type de réponse : Connect to human agent
- ID bouton :
Z23453j24ty(bouton de redirection vers la file d'attente des agents experts en investissement)
Discussion Web : réutilisation du jeton JWT pour l'authentification par webhook
Vous pouvez utiliser le même jeton Web JSON (JWT) que celui que vous avez utilisé pour sécuriser votre discussion Web afin d'authentifier les appels de webhook. Si vous spécifiez un jeton dans la propriété identityToken lorsque
vous ajoutez la discussion Web à votre page Web, le jeton est stocké dans une variable privée nommée context.integrations.chat.private.jwt. Pour plus d'informations sur la transmission d'un jeton JWT, voir Activation de la sécurité de la discussion Web.
-
Dans votre boîte de dialogue, ouvrez Webhooks.
-
Cliquez sur Ajouter un en-tête.
-
Dans Nom d'en-tête, entrez un nom, tel que
JWT. -
Dans la zone Header value, ajoutez
$integrations.chat.private.jwt.