Intégration d'une brique avec un agent physique

Voici les étapes de haut niveau permettant d'intégrer une brique à une interface Oracle B2C Service existante. Les rubriques suivantes décrivent chaque étape plus en détail.

  1. Création d'un canal d'intégration d'agent : ce canal permet à la brique de communiquer avec Oracle B2C Service.
  2. Activer les analyses : sur la page Paramètre Icône Paramètres de la brique, activez l'option Activer les analyses pour permettre à la structure de transmettre l'historique de conversation à l'agent physique.
  3. Configuration du flux de dialogue de transfert à l'agent : ajoutez les composants Initiation à l'agent et Conversation à l'agent au flux de dialogue. (Dans le concepteur visuel de flux, ces composants sont disponibles via le modèle Communication d'agent.)
    • Le composant Lancement d'agent lance le transfert à Oracle B2C Service.
    • Le composant Conversation d'agent gère l'interaction entre la brique et l'agent.

Création d'un canal d'intégration d'agent

Un canal d'intégration d'agent vous permet de configurer les connexions entre les briques et le système d'agent en direct.

Avant de commencer, obtenez les informations d'identification d'un membre du personnel d'Oracle B2C Service associé à un profil disposant des droits d'accès suivants :

  • Accès à l'interface Oracle B2C Service concernée
  • Authentification de compte et authentification de session pour l'API SOAP publique
  • Authentification de compte pour l'interface utilisateur du navigateur de l'agent

Contactez un administrateur Oracle B2C Service si vous ne disposez pas de ces informations.

Vous devez également vérifier que le gestionnaire de comptes Oracle B2C Service a activé l'API d'interface personnalisée de discussion et l'API d'intégration de file d'attente tierce de discussion.

  1. Cliquez sur Icône permettant d'ouvrir le menu latéral pour ouvrir le menu latéral et sélectionnez Développement, puis Canaux.

  2. Cliquez sur Intégrations d'agent, puis sur + Ajouter une intégration d'agent.
  3. Entrez le nom et éventuellement la description du canal.

    Lorsque vous utilisez les composants Initiation d'agent et Conversation d'agent dans le flux de dialogue pour activer la transition vers et depuis Oracle B2C Service, vous devez utiliser ce nom pour les propriétés agentChannel.

  4. Choisissez Service Cloud dans le menu Type d'intégration.

  5. Entrez le nom utilisateur et le mot de passe d'un membre du personnel Oracle B2C Service disposant des droits d'accès de profil requis.

  6. Définissez le nom de domaine et le préfixe du nom d'hôte.

    Si vous avez accès à Oracle B2C Service, vous pouvez dériver ces valeurs de l'URL utilisée pour lancer l'interface utilisateur du navigateur d'agent. Par exemple, si l'URL est sitename.exampledomain.com, le préfixe du nom d'hôte est sitename et le nom de domaine est exampledomain.com.

    Si le canal se connecte à Oracle B2C Service version 19A ou ultérieure et que vous disposez de plusieurs interfaces, vous devez inclure l'ID d'interface dans le nom d'hôte (site). Par exemple, pour l'interface dont l'ID est 2, utilisez un nom tel que sitename-2.exampledomain.com.

  7. (Facultatif) Augmentez ou diminuez le délai d'expiration de session (minutes). Cette valeur permet de déterminer à quel moment le composant de flux de dialogue Conversation d'agent doit déclencher les actions agentLeft et expired.

    Si la valeur CS_IDLE_TIMEOUT d'Oracle B2C Service est égale ou supérieure à la valeur Expiration de la session, expired est déclenché lorsque ni l'utilisateur final ni l'agent n'envoie de message dans le délai d'expiration de la session. Si CS_IDLE_TIMEOUT est inférieur à la valeur Expiration de la session, Oracle B2C Service met fin à la discussion et l'action agentLeft est déclenchée à la place.

    Si votre instance est provisionnée sur Oracle Cloud Platform (comme toutes les instances de la version 19.4.1), le service utilise la valeur de 15 minutes au lieu du paramètre Expiration de la session.

    Par défaut, la valeur de CS_IDLE_TIMEOUT est de 10 minutes. Pour afficher ou modifier les paramètres de votre instance Oracle B2C Service, ouvrez la console de service de bureau Oracle B2C Service, cliquez sur Navigation, sur la première option Configuration du menu, puis sur Paramètres de configuration. Recherchez ensuite le paramètre CS_IDLE_TIMEOUT, situé dans le dossier Discussion.

  8. Cliquez sur Créer.

  9. Pour permettre à la brique d'interagir avec la structure de l'agent, activez le canal en activant l'option Interaction activée.

Activation du transfert de l'historique de la conversation

Vous devez activer la journalisation pour permettre à la structure de transfert à l'agent physique de transmettre l'historique de la conversation à un agent physique. Lorsque vous activez cette option, la console de discussion de l'agent affiche la conversation du client telle qu'elle s'est déroulée avant le transfert à l'agent.

  1. Dans la barre de navigation de gauche de la brique, cliquez sur Paramètres Icône Paramètres.
  2. Dans l'onglet Général, activez le commutateur Activer les analyses.
Remarque

L'historique de conversation est tronqué après 4 000 caractères.

Configuration du flux de dialogue de transfert à l'agent

Il existe plusieurs moyens d'acheminer les clients vers un agent physique. Par exemple :

  • Vous pouvez fournir une option spécifique permettant de parler avec un agent.
  • Vous pouvez exécuter un parcours qui collecte les informations nécessaires sur le client avant de le transférer à un agent.
  • Vous pouvez créer un gestionnaire des intentions non résolues qui transfère le client à un agent.
  • Vous pouvez créer une intention de transfert à un agent.

Voici les étapes de base pour configurer le flux de dialogue :

  1. Ajoutez les composants de lancement d'agent et de conversation d'agent au flux. Si votre brique est en mode de boîte de dialogue visuelle (valeur par défaut), utilisez le modèle Communication avec l'agent, qui contient ces deux composants.
  2. Lancez le transfert d'agent physique en définissant la propriété de canal d'intégration d'agent de l'état d'initialisation de l'agent sur le nom du canal d'intégration d'agent physique que vous avez configuré pour le système d'agent physique.

    Une fois que le canal d'intégration d'agent a établi une connexion et qu'Oracle B2C Service a envoyé la demande de discussion à la file d'attente (c'est-à-dire, une fois qu'il a créé un ticket d'aide), le composant d'intégration d'agent permet de passer à l'état suivant, qui est généralement défini pour le composant Conversation d'agent.

  3. Affinez le réglage des messages utilisés par le composant (tels que les messages en attente et repris) dans les entrées de groupe de ressources du composant. Pour accéder à ces entrées, ouvrez la page Regroupement de ressources de la brique en cliquant sur Icône Groupes de ressources, sélectionnez l'onglet Configuration et saisissez agenti dans le champ de filtre.

    Conseil :

    Les clients peuvent demander plusieurs fois à discuter avec un agent physique même lorsque leurs demandes ont déjà été mises dans la file d'attente de la console de discussion de l'agent. Si tel est le cas, vous pouvez modifier la valeur de l'entrée de groupe de ressources systemComponent_AgentInitiation_resumedMessage du message Reprise de la discussion avec l'agent pour la remplacer par une autre valeur plus appropriée.
  4. Configurez le composant Conversation d'agent.

    Tant que le moteur de dialogue se trouve dans l'état défini pour ce composant, la brique transmet les messages entre le client et l'agent. La brique écoute les mots-clés de sortie dans l'entrée client, comme au revoir. Lorsque la brique détecte l'un de ces mots-clés, le composant met fin à la session en cours et déclenche la transition next.

    Vous pouvez modifier les mots-clés de sortie ainsi que les messages standard utilisés par le composant (tels que les messages d'expiration et d'erreur) dans les entrées du groupe de ressources pour le composant. Pour accéder à ces entrées, ouvrez la page Regroupement de ressources de la brique en cliquant sur Icône Groupes de ressources, sélectionnez l'onglet Configuration et saisissez agentc dans le champ de filtre.

Autorisation des agents à spécifier l'action de transition

Pour permettre à l'agent d'indiquer l'état vers lequel effectuer la transition à la fin de la session de discussion en direct, utilisez la propriété Actions d'agent dans le composant Lancement d'agent afin de répertorier les actions prises en charge que l'agent peut envoyer, puis utilisez le composant Conversation d'agent pour mettre en correspondance les actions avec les états.

Lorsque l'agent accepte la demande de discussion, la console de discussion affiche les actions prises en charge. Chacune d'entre elles est précédée d'une barre oblique (elles sont appelées actions à barre oblique).

Console d'agent affichant la liste des actions prises en charge.

Si l'agent envoie l'une des actions à barre oblique, l'action est envoyée à la structure de transfert à l'agent physique et la brique met fin à la discussion en direct. Si le composant Conversation d'agent possède une transition pour cette action, le flux passe à l'état nommé. Notez que le message de conclusion (stocké dans l'entrée du groupe de ressources systemComponent_AgentConversation_conclusionMessage) n'est pas généré si l'agent envoie une action de barre oblique.

Console de discussion indiquant que l'agent a envoyé /Order et que la discussion a pris fin.
  1. Dans l'état Lancement de l'agent, utilisez la propriété Actions d'agent pour répertorier les actions prises en charge.
  2. Ajoutez un état pour la transition next, qui est atteint lorsque l'utilisateur termine la conversation en utilisant un mot-clé de sortie, puis ajoutez les actions de transition suivantes :

Remplacement du message indiquant la position dans la file d'attente et le temps d'attente

Par défaut, lorsqu'une demande de discussion est soumise, le service renvoie un message indiquant la position dans la file d'attente et le temps d'attente générés par la brique. Par exemple, ce message peut se présenter comme suit :

You are in position {0} in our queue. Expected wait time is {1} minute(s) {2} second(s)
Vous pouvez utiliser la propriété B2C Remplacement du message d'attente du composant Conversation d'agent pour définir votre propre message personnalisé. Comme illustré par le fragment de code suivant, vous pouvez créer un message qui renvoie le statut de la file d'attente et du temps d'attente à l'aide des propriétés system.message.messagePayload.position et system.messagePayload.waitTime, respectivement :
"You are at number ${system.message.messagePayload.position} in the queue. Your wait time is ${system.message.messagePayload.waitTime}."
Vous pouvez adapter le contenu du message en combinant ces propriétés avec les opérations Apache FreeMarker intégrées, telles que l'opération then dans le fragment de code suivant. Ici, elle permet à la brique de générer un contenu propre aux minutes ou aux secondes. Pour les temps d'attente de 60 secondes ou plus (waitTime>60), la brique génère le message You are at number 9 in the queue. Votre temps d'attente est de 1 min. Sinon, elle génère le message You are at number 9 in the queue. Votre temps d'attente est de 55 secondes.

Gestion des rejets d'initiation d'agent et des erreurs système

Votre flux de dialogue doit gérer les erreurs qui peuvent survenir lors de l'initiation d'agent. Lorsque le composant d'initialisation d'agent tente d'initier une connexion au système d'agent physique, il peut renvoyer une action error ou rejected. Il peut également appeler une erreur système en cas de problème causé par le développeur.

  • Action rejected : cette action est déclenchée lorsqu'Oracle B2C Service rejette la demande de connexion. Voici quelques-unes des raisons du rejet d'une demande de connexion :

    • La demande a été faite en dehors des heures d'ouverture configurées.
    • Il s'agit d'un jour férié.
    • Un problème est survenu avec le serveur de discussion.
    • Aucun agent n'est disponible (les propriétés Autoriser le transfert si et ID de file d'attente sont requises)
      Remarque

      Les propriétés Autoriser le transfert si et ID de file d'attente doivent être définies pour qu'une connexion soit rejetée lorsqu'aucun agent n'est disponible. Sinon, le transfert restera dans une condition d'attente.

    Lorsqu'Oracle B2C Service rejette une demande d'ouverture de session, la brique affiche un message de rejet (Rejeté par l'agent par défaut). Elle passe ensuite à l'état correspondant à l'action rejected. Vous pouvez utiliser l'entrée de groupe de ressources systemComponent_AgentInitiation_rejectedMessage pour fournir un message personnalisé. Pour accéder à cette entrée, ouvrez la page Regroupement de ressources de la brique en cliquant sur Icône Groupes de ressources, sélectionnez l'onglet Configuration, entrez agenti dans le champ de filtre et sélectionnez la clé systemComponent_AgentInitiation_rejectedMessage.

    Conseil :

    Si vous disposez d'un accès administrateur à la console de service de bureau Oracle B2C Service, vous pouvez consulter les heures de fonctionnement et les jours fériés. Dans le volet de navigation, cliquez sur Configuration, sélectionnez Configuration du site, cliquez deux fois sur Interfaces, puis cliquez sur Heures de discussion.
  • Action error : cette action est déclenchée lorsqu'un problème survient lors de l'établissement d'une connexion à Oracle B2C Service. Par exemple, le mot de passe dans le canal d'intégration d'agent n'est plus valide ou le serveur Oracle B2C Service rencontre un problème.

    Lorsque ce type d'erreur se produit, la brique affiche par défaut le message suivant, puis passe à l'état correspondant à l'action error.

    Error transferring to agent, the reason is: <reason>

    Vous pouvez modifier le message en modifiant l'entrée du groupe de ressources systemComponent_AgentInitiation_errorMessage.

  • Erreurs système : lorsque le canal d'intégration d'agent n'existe pas ou est désactivé, la brique appelle une erreur système. Par défaut, la brique affiche le message "Oups, je rencontre quelques difficultés. Réessayez ultérieurement...". Malheureusement, tant qu'un développeur ne corrige pas le problème, l'utilisateur du bot ne gagne rien à réessayer. Par conséquent, vous pouvez faire en sorte que votre flux de dialogue gère mieux ces erreurs en ajoutant une transition error, qui passe à un état générant un message côté client plus utile. (Elle est différente de la transition error action.) Vous pouvez également modifier le message par défaut en accédant à Paramètres > Configuration et en modifiant l'invite d'erreur inattendue. Toutefois, cette modification affecte la brique de façon globale.

    Lorsque vous validez un flux de dialogue, le valideur vous indique si le canal d'intégration d'agent est manquant ou désactivé. N'oubliez donc pas d'effectuer cette opération avant de tester votre brique ou de la mettre à disposition du public.

    Voici quelques moyens de diagnostiquer une erreur système :

    • Cliquez sur Valider dans la brique pour valider le flux de dialogue.

    • Exécutez la brique dans l'aperçu. Lorsque l'erreur se produit, l'état et le message (motif) d'erreur apparaissent dans l'onglet Conversation.

    • Dans l'état vers lequel la transition error achemine le flux, générez une chaîne qui inclut le modèle Freemarker ${system.errorAction}, qui imprime le message d'erreur (motif).