L'action nĂ©cessite plusieurs informations avant de pouvoir ĂȘtre complĂ©tĂ©e.
Collectez chaque valeur dans sa propre étape en tant que slot ; l'assistant demande celles qui n'ont pas encore été fournies et ignore celles déjà fournies.
Pourquoi: Le remplissage de slots par étapes gÚre les entrées désordonnées et à valeurs multiples sans branchement manuel.
Référence
Une valeur doit persister aprĂšs la fin de l'action en cours.
Stockez-la dans une variable de session, et non une variable d'étape/d'action. Les variables d'action sont limitées à l'action ; les variables de session existent pour toute la conversation.
Pourquoi: Choisir la mauvaise portĂ©e est un bug classique : la valeur disparaĂźt lorsque l'action est terminĂ©e ou ne peut pas ĂȘtre partagĂ©e entre les actions.
Une étape demande à l'utilisateur de choisir parmi un ensemble connu et fixe.
Utilisez un type de réponse "options" avec des choix définis au lieu de texte libre, et mappez chaque option à une valeur.
Pourquoi: Les options contraignent la saisie, éliminent l'ambiguïté d'analyse et s'affichent sous forme de boutons sur les canaux pris en charge.
Une valeur collectĂ©e (e-mail, date, montant) peut ĂȘtre mal formĂ©e.
Ajoutez une condition de validation à l'étape ; si la valeur est invalide, maintenez l'utilisateur sur l'étape avec une invite corrective.
Pourquoi: La validation au moment de la capture évite de transmettre des données incorrectes aux extensions et aux étapes suivantes.
Les étapes ultérieures ne devraient s'exécuter que pour certains utilisateurs ou valeurs.
Définissez des conditions d'étape sur les variables déjà collectées afin que les étapes soient ignorées lorsque leur condition est fausse.
Pourquoi: Les conditions expriment des branchements sans dupliquer les actions ; l'éditeur les évalue de haut en bas.
Plusieurs actions nĂ©cessitent le mĂȘme sous-flux (par exemple, vĂ©rifier l'identitĂ©).
Factorisez la logique partagée en une sous-action et appelez-la depuis chaque action parente.
Pourquoi: Les sous-actions maintiennent la logique de vérification DRY (Don't Repeat Yourself) et cohérente ; la duplication d'étapes entraßne des incohérences.
L'utilisateur pose une question sans rapport au milieu du flux ("quelles sont vos heures ?").
Autorisez la digression afin que l'assistant réponde à la question annexe, puis revienne à l'action interrompue.
Pourquoi: Bloquer les digressions impose un script rigide qui frustre les utilisateurs ayant des demandes secondaires légitimes.
Besoin de calculer ou de transformer une valeur à l'intérieur d'une étape.
Utilisez le langage d'expression intégré (par exemple, les fonctions de chaßne et mathématiques sur les variables) dans l'étape ou la réponse.
Pourquoi: Les transformations légÚres appartiennent aux expressions ; recourir à un webhook pour des calculs triviaux est excessif.
Une action de suivi nécessite une valeur que l'utilisateur a fournie précédemment.
Référencez la variable de session existante plutÎt que de redemander.
Pourquoi: Redemander des données déjà connues donne une impression de dysfonctionnement ; le maintien du contexte est une caractéristique d'un bon flux.
Un flux doit s'arrĂȘter ou passer Ă une autre action sous une condition.
Utilisez "terminer l'action" ou une transition "aller à une étape dans une autre action" pour contrÎler explicitement le flux.
Pourquoi: Les transitions explicites empĂȘchent le passage inattendu Ă l'Ă©tape suivante aprĂšs une condition terminale.