Qu'est ce qu'un tag ?

Un tag est une liste qui contient un ou plusieurs objet(s) ou chaîne(s) de caractère. Vizir génère automatiquement des listes dans plusieurs cas dont certains sont plus "simples que d'autres.

Les tags simples

  • Lorsque vous offrez une question à choix multiple à l'utilisateur ("demander une liste de réponses")

Par exemple vous demander à l'utilisateur ses sports préférés, s'il a choisi "foot" et "tennis" Vizir construira un tag structuré comme suit :

favorite_sports: ['foot', 'tennis']

Récupérer les valeurs d'un tag "simple" ?

  • Récupérer la valeur d'un tag pour afficher plusieurs bouton (ou carrousel){{tag.favorite_sports.[]}} => vous permet de construire un carrousel avec autant de cartes qu'il y a de sports préférés où chaque carte a comme titre le sport en question.
  • Récupérer la valeur d'un tag précis (on connait l'index qu'on veut){{tag.favorite_sports.0}} => vous permet de récupérer la première réponse de l'utilisateur dans la liste (ici c'est "foot")
  • Récupérer la liste des tags (avec des virgules)  {{tag.favorite_sports}} => permet de récupérer la liste complète et de l'utiliser dans les messages du chatbot ou dans votre système d'informations

Les tags moins simples

  • Lorsque l'utilisateur répond avec plusieurs images dans sa réponse
  • Lorsque vous avez mis en place des smart resource
  • Lorsque vous souhaitez exploiter la réponse d'une API

Imaginez que vous avez fait appel à une API qui vous renvoie l'ensemble des sports préférés. Ici imaginons que chaque sport est défini par plusieurs critères : nom, description, etc ... (c'est ce qui complexifie la structure et fait d'un tag "simple", un tag "moins simple"). Vous aurez une structure comme ceci :

favorite_sports: [
 {name: 'foot', description: 'le foot est ....'},
 {name: 'tennis', description: 'le tennis est ....'}
]

Récupérer la valeur d'un tag "moins simple"

  • Récupérer la valeur d'un tag pour afficher plusieurs bouton (ou carousel){{tag.favorite_sports.[].name}} => vous permet de construire un carrousel avec autant de cartes qu'il y a de sports préférés où chaque carte a comme titre le sport en question.
  • Récupérer la valeur d'un tag précis (on connait l'index qu'on veut){{tag.favorite_sports.0.name}}=> vous permet de récupérer la première réponse de l'utilisateur dans la liste (ici c'est "foot")
  • Récupérer la liste des tags (avec des virgules)                                   {{tag.favorite_sports}} => permet de récupérer la liste complète et de l'utiliser dans les messages du chatbot ou dans votre système d'informations

Vous savez désormais exploiter l'essentiel de vos tags, mais vous pouvez rencontrer des cas davantage complexes notamment avec les retours API.

Pour aller plus loin :

Par exemple, dans le cas des retours API, vous pouvez avoir une imbrication de tableaux avec une structure de ce type :

favorite_sports = [[foot, tennis], [hand, basket]]

Vous pouvez utiliser l'une des deux écritures suivantes :

  • {{tag.favorite_sports.[].0}} => Vous retourne "foot, hand", càd le premier élément de chacun des objets
  • {{tag.favorite_sports.0.[]}} => Vous retourne "foot, tennis", càd tous les éléments du premier objet

A vous de jouer !

Avez-vous trouvé votre réponse?