Agent virtuel Fonctionnalités d’API disponibles dans la version Store 2.0.x
Agent virtuel La version 2.0.x de l’API permet d’accéder à d’autres fonctionnalités identiques à celles disponibles dans Agent virtuel et Messagerie instantanée d'agent, y compris la prise en charge des contrôles enrichis et les notifications.
Prise en charge de contrôles enrichis supplémentaires
Agent virtuel L’API prend désormais en charge les contrôles enrichis suivants.
- Contrôles booléens
- Les contrôles booléens renvoient des réponses sous forme de chaînes (soit Yes ou No) pour faciliter la localisation.
Pour plus d’informations sur la localisation de rubriques, reportez-vous à la section Localisation des Agent virtuel conversations.
Agent virtuel L’API envoie l’exemple de JSON suivant pour un contrôle booléen :{ "requestId": "asd2423-wrr434-weruyt-1234567", "clientSessionId": "", "nowSessionId": "", "message": { "text": "7a36412253a13010ff59ddeeff7b12fb", "typed": false, "clientMessageId": "ABC-123" }, "userId": "beth.anglin", "body": [ { "uiType": "Boolean", "group": "DefaultPicker", "required": true, "nluTextEnabled": false, "label": "Sample Response for boolean control", "options": [ { "label": "Yes" }, { "label": "No" } ] } ], "score": 1 } - Contrôles personnalisés
- Les rubriques qui utilisent des contrôles personnalisés sont désormais prises en charge. Pour plus d’informations sur les commandes personnalisées, reportez-vous à la section Personnalisation avec des Agent virtuel contrôles personnalisés.
- Contrôles de réponse du bot de table
- Les rubriques qui utilisent des contrôles de réponse de bot de table sont désormais prises en charge. Pour plus d'informations, consultez Contrôle de la réponse du bot de table.
Tous les enregistrements sont renvoyés par l’API Agent virtuel en une seule fois. Agent virtuel attendra une réponse du client d’API pour envoyer le contrôle suivant. Utilisez la paginationBreak propriété pour afficher les enregistrements en blocs à l’utilisateur. Par exemple, si paginationBreak la valeur est définie sur 10, l’utilisateur verra 10 enregistrements à la fois. Lorsque le client est prêt à passer au contrôle suivant, il doit envoyer DONE.
Agent virtuel L’API envoie l’exemple JSON suivant pour un contrôle de réponse de bot de table :{ "requestId": "asd2423-wrr434-weruyt-1234567", "clientSessionId": "", "nowSessionId": "", "message": { "text": "Yes", "typed": false, "clientMessageId": "ABC-123" }, "userId": "beth.anglin", "body": [ { "uiType": "OutputTable", "group": "DefaultOutputTable", "label": "Sample Table Rich control", "headers": [ "Number", "Short description" ], "data": [ [ "INC0000005", "CPU load high for over 10 minutes" ], [ "INC0000015", "I can't launch my VPN client since the last software update" ], [ "INC0000025", "Need to add more memory to laptop" ], [ "INC0000035", "Reset my password" ], [ "INC0000055", "SAP Sales app is not accessible" ], [ "INC0009005", "Email server is down." ] ], "paginationBreak": 10, "totalSearchResultsCount": 6, "navigationBtnLabel": "Click for more" } ], "score": 1 } - Contrôles de réponse du bot HTML
- Les rubriques qui utilisent des contrôles de réponse de bot HTML sont désormais prises en charge. Pour plus d'informations, consultez Contrôle de réponse du bot HTML.Agent virtuel L’API envoie l’exemple de JSON suivant pour un contrôle de réponse de bot HTML :
{ "requestId": "asd2423-wrr434-weruyt-1234567", "clientSessionId": "", "nowSessionId": "", "message": { "text": "Yes", "typed": false, "clientMessageId": "ABC-123" }, "userId": "beth.anglin", "body": [ { "uiType": "OutputHtml", "group": "DefaultOutputHtml", "style": "inline", "height": 100, "width": 100, "value": "<html> <body> Sample Response for Html control </body> </html> ", "imageUrl": null, "imageHeight": 0, "imageWidth": 0, "links": null }, { "uiType": "InputText", "group": "DefaultText", "required": true, "nluTextEnabled": false, "label": "some text", "maskType": "NONE" } ], "score": 1 } - Contrôles de réponse d’agent à réponses multiples
- Les rubriques qui utilisent des contrôles de réponse d’agent à réponses multiples sont désormais prises en charge. Pour plus d'informations, consultez Contrôle de la réponse du bot à réponses multiples.Agent virtuel L’API envoie l’exemple de JSON suivant pour un contrôle de réponse d’agent à réponses multiples :
{ "requestId": "asd2423-wrr434-weruyt-1234567", "clientSessionId": "", "nowSessionId": "", "message": { "text": "Done", "typed": false, "clientMessageId": "ABC-123" }, "userId": "beth.anglin", "body": [ { "uiType": "MultiPartOutput", "group": "DefaultMultiPartOutput", "navigationBtnLabel": "Click for more", "content": { "uiType": "OutputText", "value": "Text response from multiflow control example", "maskType": "NONE" } } ], "score": 1 } - Prise en charge du texte enrichi
- Les rubriques qui utilisent du texte enrichi sont désormais prises en charge. Le texte enrichi comprend le texte en gras ou en italique, les liens hypertexte, les listes à puces et les emojis.
Fonctionnalités Messagerie instantanée d'agent supplémentaires
L’API Agent virtuel prend désormais en charge les fonctionnalités suivantes lors du transfert vers .Messagerie instantanée d'agent
- Transmettre le nom et l’avatar de l’agent
- Lorsque le bot principal transfère une messagerie instantanée à un agent actif, Agent virtuel il peut envoyer le nom et l’avatar de l’agent au bot principal. Pour l’activer, activez les noms et les avatars des agents dans les paramètres de Messagerie instantanée d’agent .Un exemple de charge utile de message pourrait ressembler à ceci :
{ "requestId":"f42f3550-5b44-4cde-aa52-9b6756b3131c", "clientSessionId":"U94CSJLEN", "message":{ "text":"Live Agent support.", "typed":true }, "userId":"U94CSJLEN", "body":[ { "uiType":"OutputText", "group":"DefaultText", "agentInfo":{ "sentFromAgent":true, "agentName":"Beth Anglin", "agentAvatar":"ee4eebf30a0004d963b5c5ac0d734dc4.iix?t=small" }, "value":"Thank you for contacting support. I am looking into your question now and will be with you shortly." } ], "agentChat":true, "score":1 }Pour plus d’informations, voir Configurer la Messagerie instantanée d’agent.
- Temps d’attente de l’agent actif
- Lors du transfert vers un agent actif, le bot principal peut recevoir le temps d’attente et l’afficher à l’utilisateur. Pour activer cette option, sélectionnez Temps d’attente dans le champ État En attente de messagerie instantanée en direct dans les paramètres de Messagerie instantanée d’agent. La spinnerType valeur est définie sur wait_time. Si l’état d’attente de la messagerie instantanée en direct est défini sur Aucun, la spinnerType valeur est none.Agent virtuel L’API envoie l’exemple JSON suivant dans le body paramètre de la charge utile.
{ "uiType":"ActionMsg", "actionType":"StartSpinner", "spinnerType":"wait_time", "message":"Routing you to a live agent...", "waitTime":"8 Seconds" }Pour plus d’informations, voir Configurer la Messagerie instantanée d’agent.
- Envoyer l’historique de la messagerie instantanée du bot primaire à Agent virtuel
- Le bot principal peut transmettre l’historique de la messagerie instantanée à un agent en direct afin que celui-ci puisse voir le contexte de la conversation.Agent virtuel convertit l’historique des messages en HTML, puis en image.
- L’image convertie est envoyée à l’agent actif comme premier message de la messagerie instantanée.
- Le bot principal doit envoyer l’historique des messages dans la première demande. Dans toute autre demande postérieure à la première, la charge utile de l’historique des messages sera ignorée.
- Seuls les messages texte sont pris en charge.
- Le bot principal peut transmettre n’importe quelle URL comme valeur dans le message texte, mais l’agent actif ne peut l’afficher que dans le cadre de l’image. L’agent actif ne peut pas cliquer sur le lien.
Exemple de charge utile du message :{ "value": "Help me with password reset", "displayName": "able", "type": "text" "isBotMessage": false, }Remarque :Dans l’exemple précédent, type est sensible à la casse et doit avoir une valeur de text.
Demandes enrichies du bot primaire
L’API Agent virtuel prend désormais en charge les demandes suivantes du bot principal.
- Paramètres système et variables de contexte
- Le bot principal peut transmettre des paramètres système et des variables de contexte en entrée et Agent virtuel honorera ces paramètres. Les paramètres système tels que liveagent_devicetype, liveagent_requester_session_language, liveagent_topic, live_agent_onlytopic, , et liveagent_devicetimezone sont pris en charge. Les variables de contexte personnalisées et Messagerie instantanée d'agent les variables de contexte sont également prises en charge. Exemple de charge utile du message :
{ "requestId": "f42f3550-5b44-4cde-aa52-xxxxxxxxxx", "clientSessionId": "xxxxxxxxxx", "token": "abcd", "message": { "text": "Test", "typed": true }, "contextVariables": { "requester_session_language": "es" }, "userId": ""abel.tuter", "emailId": "abel.tuter@example.com" }Pour plus d'informations, consultez Variables de contexte de chat d’agent en direct et Configurer les variables de contexte pour le stockage des informations relatives à la messagerie instantanée.
- Fuseau horaire de l'utilisateur
- Définissez le fuseau horaire de l’utilisateur en le transmettant dans la charge utile de la demande. Une fois défini, ce paramètre de fuseau horaire est conservé jusqu’à ce qu’il soit réinitialisé.Exemple de charge utile du message :
{ "requestId": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxxxxxx", "clientSessionId": "xxxxxxxx-xxxx", "token": "xxxxx", "action" : "SET_USER_TIMEZONE", "userId": "able.tuter", "emailId": "abel.tuter@example.com", "timezone":"Asia/Kolkata" }Lors de l’utilisation de cette fonctionnalité, tenez compte des points suivants :- La conversation doit être ouverte (actuelle) afin de convertir la date et l’heure dans le fuseau horaire de l’utilisateur.
- Le bot principal doit envoyer la date et l’heure dans l’un des formats suivants :
- Nom du fuseau horaire. Par exemple, Asia/Kolkata ou America/New_York.
- Date/Heure au format 24 heures. Par exemple : YYYY-MM-DD HH:MM:SS
- L’API Agent virtuel utilise le fuseau horaire spécifié par le bot principal, même si le fuseau horaire qu’elle définit diffère de la valeur stockée dans la table [sys_user].
- Pour définir le fuseau horaire de l’utilisateur, envoyez l’action SET_TIMEZONE . Si le nom du fuseau horaire n’est pas valide, la valeur par défaut du fuseau horaire est l’heure UTC. Par exemple, 2021-02-16 20:13:13.
Prise en charge du saut de nœud
Agent virtuel L’API prend en charge l’omission d’un nœud s’il est conçu pour le faire dans la rubrique. Par exemple, dans , vous Concepteur d'agent virtuelpouvez désigner un contrôle d’entrée utilisateur comme pouvant être ignoré dans l' zone de la feuille de propriétés.
Pour plus d’informations sur la définition d’un nœud comme étant ignorable, reportez-vous à la section Concepteur d'agent virtuel Contrôles de saisie de l’utilisateur.
{
"requestId": "f42f3550-5b44-4cde-aa52-9b6756b3131c",
"clientSessionId": "835607",
"token": "snow",
"message": {
"text": "_skip_",
"typed": false
},
"emailId": "beth.anglin@example.com",
"userId": "beth.anglin"
}Prise en charge de la poignée de main synchrone
- Messagerie instantanée d'agent
- Notifications
- Indicateurs de frappe
- Exclure le canal bot à bot de Messagerie instantanée d'agent.
- Accédez à Tous, puis saisissez sys_properties.list dans le filtre.
- Sélectionnez la com.glide.cs.exclude.liveagent.support propriété système pour l’ouvrir.
- Ajouter Bot To Bot au champ Valeur .
Figure 2. Exclure le canal bot à bot de Messagerie instantanée d'agent - Cliquez sur Mettre à jour.
- Accédez à Tous, puis saisissez sys_cs_channel.list dans le filtre de navigation.
- Sélectionnez l’enregistrement Bot à bot.
- Décochez la case Activer les notifications pour la désactiver.
- Décochez la case Indicateur de frappe de support pour le désactiver.
- Cochez la case Synchrone .
Figure 3. Canal bot à bot avec prise en charge synchrone activée Remarque :Si le champ Synchrone n’est pas visible, vous pouvez configurer la mise en page du formulaire pour l’afficher. - Cliquez sur Mettre à jour.
Prise en charge des notifications
- Simple : notifications textuelles uniquement. Les notifications simples sont livrées dès qu’elles arrivent.
- Carte d’image : image téléchargée sur le serveur ou spécifiée avec une URL.
- Carte d’enregistrement : colonnes spécifiées à partir d’un enregistrement dans une table.
- Actionnable : Donne à l’utilisateur la possibilité d’effectuer certaines actions. Les notifications exploitables sont mises en file d’attente. L’utilisateur peut les récupérer sur demande en envoyant la Show Notification commande.
Pour plus d'informations, consultez Configuration des Agent virtuel notifications.
{
"requestId": "asd2423-wrr434-weruyt-1234567",
"clientSessionId": "",
"nowSessionId": "",
"message": {
"text": "Done",
"typed": false,
"clientMessageId": "ABC-123"
},
"userId": "beth.anglin",
"body": [
{
"uiType": "OutputCard",
"group": "DefaultOutputCard",
"templateName": "Notification",
"data": "{\"sys_id\":null,\"recordDisplayValue\":null,\"messageHeading\":\"[Heading]A notification has arrived. You can continue the conversation after viewing the notification.\",\"imageUrl\":null,\"tableLabel\":null,\"enableLink\":false,\"message\":\"[message]A notification has arrived. You can continue the conversation after viewing the notification.\",\"fields\":[],\"table_name\":null,\"url\":\"http://192.168.1.9:8080/null.do?sys_id=null\"}"
}
],
"completed": true,
"score": 1
}{
"requestId": "asd2423-wrr434-weruyt-1234567",
"clientSessionId": "",
"nowSessionId": "",
"message": {
"text": "Done",
"typed": false,
"clientMessageId": "ABC-123"
},
"userId": "beth.anglin",
"body": [
{
"uiType": "OutputCard",
"group": "DefaultOutputCard",
"templateName": "Notification",
"data": "{\"sys_id\":null,\"recordDisplayValue\":null,\"messageHeading\":\"[Heading]A notification has arrived. You can continue the conversation after viewing the notification.\",\"imageUrl\":\"http://xxxxxx.service-now.com/2b2d0d2653a13010ff59ddeeff7b120d.iix\",\"tableLabel\":null,\"enableLink\":false,\"message\":\"[message]A notification has arrived. You can continue the conversation after viewing the notification.\",\"fields\":[],\"table_name\":null,\"url\":\"http://192.168.1.9:8080/null.do?sys_id=null\"}"
}
],
"completed": true,
"score": 1
}{
"requestId": "asd2423-wrr434-weruyt-1234567",
"clientSessionId": "",
"nowSessionId": "",
"message": {
"text": "Done",
"typed": false,
"clientMessageId": "ABC-123"
},
"userId": "beth.anglin",
"body": [
{
"uiType": "OutputCard",
"group": "DefaultOutputCard",
"templateName": "Notification",
"data": "{\"sys_id\":\"552c48888c033300964f4932b03eb092\",\"recordDisplayValue\":\"INC0010112\",\"messageHeading\":\"[Heading]A notification has arrived. You can continue the conversation after viewing the notification.\",\"imageUrl\":null,\"tableLabel\":\"Incident\",\"enableLink\":true,\"message\":\"[message]A notification has arrived. You can continue the conversation after viewing the notification.\",\"fields\":[{\"fieldLabel\":\"Number\",\"fieldValue\":\"INC0010112\"},{\"fieldLabel\":\"Short description\",\"fieldValue\":\"Assessment : ATF Assessor\"}],\"table_name\":\"incident\",\"url\":\"http://192.168.1.9:8080/incident.do?sys_id=552c48888c033300964f4932b03eb092\"}"
}
],
"completed": true,
"score": 1
}- Accédez à Tous, puis saisissez sys_cs_channel.list dans le filtre de navigation.
- Ouvrez l’enregistrement Bot à bot.
Si vous y êtes invité, activez la modification sur l’enregistrement.
- Cochez la case Activer les notifications .
- Cliquez sur Mettre à jour.
Les administrateurs peuvent limiter le nombre de destinataires par notification en modifiant la com.glide.cs.per_notification_user_limit propriété. La valeur par défaut est 1 000.
Changement de rubrique à l’aide du nom de rubrique
- Découverte de rubrique NLU : utilisez le nom ou l’ID de l’intention de la rubrique.
- Découverte de rubrique de mot clé : utilisez le nom ou l’ID de la rubrique.
Le bot principal peut envoyer l’action SWITCH avec le nom de la rubrique pour passer directement à une rubrique particulière.
{
"requestId": "xxxx-xxxx-xxxx-xxxx",
"clientSessionId": "xxx-xxx-xxx-xxx",
"action":"SWITCH",
"topic":{
"name": "Topic Name"
},
"userId": "beth"
} Prise en charge de l’indicateur de frappe
- Affiché à l’agent lorsque l’utilisateur tape
- Affiché à l’utilisateur lorsque le bot prépare une réponse
{
"uiType":"ActionMsg",
"actionType":"StartTypingIndicator"
} {
"requestId": "xxxxxx-xxxxxx-xxxx-xxxx-xxxxxxxxxx",
"clientSessionId": "xxxxxxxx-xxxx",
"action": "TYPING/VIEWING",
"userId": "able.tuter",
"emailId": "abel.tuter@example.com",
"timezone":"Asia/Kolkata"
} - Accédez à Tous, puis saisissez sys_cs_channel.list dans le filtre de navigation.
- Sélectionnez l’enregistrement Bot à bot.
- Cochez la case Indicateur de frappe de support .
- Cliquez sur Mettre à jour.