Événements et transitions

Dans les flux de dialogue développés avec Visual Flow Designer, les événements sont utilisés pour acheminer une conversation vers des flux ou des états au sein de flux.

Au niveau des aptitudes, les événements sont répartis comme suit :

  • Intention. Ces événements correspondent aux intentions de la brique. Un tel événement se produit lorsque l'entrée utilisateur est résolue en une intention donnée.
  • Intégré. Il s'agit d'événements standard pour les cas d'utilisation standard tels que les intentions non résolues, les intentions de réponse et les erreurs de dialogue.
  • Mettre fin à l'action de flux. Il s'agit d'événements que vous définissez vous-même et qui peuvent être déclenchés par des actions dans des états de flux de fin (à la fois des états qui utilisent le composant Flux de fin et des états qui terminent implicitement le flux).

Au niveau du flux, les événements sont répartis selon les types suivants :

  • Transitions système. Il s'agit d'événements intégrés pour les cas d'utilisation standard tels que les entrées utilisateur non résolues, les autorisations requises et les erreurs.
  • Transitions personnalisées. Il s'agit d'événements que vous pouvez vous spécifier et qui sont généralement affectés aux actions de transition de composant. Lorsque le flux atteint une telle transition, l'événement correspondant est déclenché et l'état mis en correspondance avec l'événement est appelé.

Evénements intégrés pour le flux principal

Evénement En cas de licenciement Utilisation
Aptitude de début Lorsqu'une brique commence pour la première fois. Mettez en correspondance un flux personnalisé pour effectuer des opérations telles que l'initialisation des systèmes back-end ou l'affichage d'un menu d'aide.
Erreur de boîte de dialogue Lorsqu'une erreur est générée par un composant au cours d'une conversation. Cet événement peut également être déclenché lorsqu'il y a une erreur dans un autre flux et que la transition système Erreur de dialogue de ce flux n'est pas mappée. Mettre en correspondance avec un flux personnalisé de traitement des erreurs. Si cet événement est déclenché mais qu'il n'y a pas de correspondance, le flux en cours est interrompu et la brique génère le message d'erreur par défaut ("Oops! I’m encountering a spot of trouble)".
Intention de réponse Lorsqu'une intention de réponse est résolue. Mettre en correspondance avec un flux personnalisé dédié aux intentions de réponse.
Intention non résolue Lorsque l'intention de l'utilisateur n'est pas résolue. Mettre en correspondance avec un flux d'aide personnalisé.
Aide de l'assistant numérique Lorsque l'utilisateur exprime une demande d'aide. Cela s'applique uniquement lorsque l'utilisateur a accédé à la brique via un assistant numérique et que la brique se trouve dans le contexte actuel de l'assistant numérique. Mettre en correspondance avec un flux d'aide personnalisé.
Bienvenue dans l'assistant numérique Lorsque l'utilisateur entre en contact avec l'assistant numérique. Cela s'applique uniquement lorsque l'utilisateur a utilisé un appel explicite pour accéder à la brique via un assistant numérique, mais qu'il n'a pas exprimé d'intention. Planifiez un accueil personnalisé ou un flux d'aide.
Remarque

En spécifiant des flux pour les événements Aide de l'assistant numérique et Bienvenue de l'assistant numérique, vous n'écrasez pas complètement le comportement de l'aide de l'assistant numérique et des intentions système unresolvedIntent. Si vous souhaitez modifier universellement ce comportement, vous le faites dans les paramètres de l'assistant numérique. Reportez-vous à Spécification des états pour les intentions système d'un assistant numérique.

Transitions système pour les flux

Pour chaque flux, vous pouvez tirer parti des transitions système pour définir l'endroit où vous gérez les événements tels que les erreurs de dialogue et les messages désordonnés.

Pour définir l'état utilisé pour gérer un événement donné :

  1. Dans l'onglet Configuration du flux, faites défiler la page vers le bas pour développer la section Mappages d'événements.

    La sous-section Transitions système apparaît.

  2. Pour l'événement à mapper, sélectionnez l'état auquel vous voulez le mapper.

    Il s'agit généralement d'un composant Invoke Flow qui pointe vers le flux utilitaire pour gérer l'événement. Reportez-vous à Appel d'un flux à partir d'un autre flux.

Voici les événements que vous pouvez mettre en correspondance en tant que transitions système dans un flux.

Evénement En cas de licenciement Utilisation
Autoriser un utilisateur Lorsqu'un état atteint où son état Exige une autorisation est résolu en true. Mappez avec un composant Invoke Flow qui appelle un flux d'autorisation.
Erreur de boîte de dialogue Une erreur inattendue s'est produite dans la conversation.

Mappez avec un composant Invoke Flow qui appelle un flux pour la gestion des erreurs.

Si cet événement n'est pas mis en correspondance et qu'une erreur se produit dans le flux, le flux de gestion des erreurs mis en correspondance avec l'événement intégré de l'erreur de dialogue pour le flux principal est appelé. Lorsque l'erreur de boîte de dialogue n'est mise en correspondance ni pour le flux ni pour le flux principal, la brique génère le message d'erreur par défaut (Oops! I’m encountering a spot of trouble) lorsqu'une erreur se produit.

Message hors séquence L'utilisateur sélectionne une option à partir d'un message précédent dans la conversation plutôt qu'à partir du message actuel. Mappez avec un composant Invoke Flow qui appelle un flux que vous avez fourni pour gérer les messages dans le désordre.
Saisie utilisateur inattendue L'utilisateur fournit une entrée textuelle au lieu de sélectionner l'une des options fournies dans le message. Mappez avec un composant Invoke Flow qui appelle un flux que vous avez fourni pour gérer les entrées inattendues.

Ecoute et déclenchement d'événements

Lorsque vous avez des flux imbriqués (flux avec des sous-flux) :

  • Le flux en cours écoute et déclenche des événements d'action de flux intégrés et de fin.
  • Le flux d'appel écoute uniquement les événements d'action de flux de fin déclenchés par le flux en cours. Ensuite, lorsque le sous-flux qui a déclenché un événement d'action de flux de fin est terminé, le flux parent agit sur l'événement déclenché.

    L'exemple principal est lorsque la propriété Action d'un sous-flux spécifie un événement d'action de flux de fin.