Skip to main content

Conditions et logique de branchement

Les conditions permettent a votre chatbot de prendre des decisions en fonction du contexte de la conversation, des reponses du contact ou de donnees externes. Ce guide explique comment configurer les differents types de conditions dans le Chatbot Builder de Reepli.


Pourquoi utiliser des conditions ?

Sans conditions, votre chatbot suit un parcours lineaire identique pour tous les contacts. Les conditions vous permettent de :

  • Adapter les reponses selon le profil du contact (langue, localisation, segment)
  • Orienter la conversation en fonction des reponses donnees
  • Verifier des donnees avant de poursuivre (numero de commande valide, e-mail correct)
  • Creer des parcours differencies pour chaque situation
  • Limiter l'acces a certaines fonctionnalites selon le statut du contact

Types de noeuds conditionnels

Le Chatbot Builder propose trois types de noeuds pour gerer la logique.

1. Noeud Condition (Si / Sinon)

Le noeud Condition est la forme la plus simple de branchement. Il evalue une expression et dirige le flux vers l'une des deux sorties.

SortieDeclenchement
VraiLa condition est remplie
FauxLa condition n'est pas remplie

Configuration

  1. Ajoutez un noeud Condition sur le canevas.
  2. Dans le panneau de droite, definissez la condition :
    • Selectionnez la source (variable, attribut contact, reponse precedente).
    • Choisissez l'operateur de comparaison.
    • Saisissez la valeur de reference.
  3. Deux sorties apparaissent sur le noeud : Vrai et Faux.
  4. Connectez chaque sortie au noeud suivant correspondant.

Operateurs de comparaison disponibles

OperateurDescriptionExemple
est egal aCorrespondance exacte{{langue}} est egal a fr
n'est pas egal aNon correspondance{{statut}} n'est pas egal a bloque
contientLe texte inclut la valeur{{message}} contient commande
ne contient pasLe texte n'inclut pas la valeur{{message}} ne contient pas annuler
commence parLe texte debute par la valeur{{email}} commence par admin
se termine parLe texte finit par la valeur{{email}} se termine par .fr
est superieur aComparaison numerique{{montant}} est superieur a 100
est inferieur aComparaison numerique{{age}} est inferieur a 18
est superieur ou egal aComparaison numerique{{score}} est superieur ou egal a 50
est inferieur ou egal aComparaison numerique{{tentatives}} est inferieur ou egal a 3
est videLa valeur n'existe pas ou est vide{{email}} est vide
n'est pas videLa valeur existe et n'est pas vide{{telephone}} n'est pas vide
correspond a (regex)Correspondance par expression reguliere{{code}} correspond a ^[A-Z]{3}[0-9]{4}$

2. Noeud Aiguillage (Switch)

Le noeud Aiguillage permet de gerer plusieurs cas a la fois, comme un menu a choix multiples.

Configuration

  1. Ajoutez un noeud Aiguillage sur le canevas.
  2. Selectionnez la variable a evaluer.
  3. Definissez les cas :
    • Cliquez sur Ajouter un cas pour chaque valeur possible.
    • Saisissez la valeur attendue pour chaque cas.
  4. Un cas Defaut est automatiquement cree pour gerer les valeurs non prevues.
  5. Chaque cas cree une sortie sur le noeud.
  6. Connectez les sorties aux noeuds suivants.

Exemple pratique

Variable evaluee : {{choix_service}}

CasValeurNoeud suivant
Cas 1supportFlux support technique
Cas 2commercialFlux equipe commerciale
Cas 3facturationFlux service facturation
Defaut--Message "Je n'ai pas compris"
Conseil

L'aiguillage est preferable a plusieurs conditions Si/Sinon enchainee lorsque vous comparez la meme variable a plusieurs valeurs. Il rend le flux plus lisible et plus facile a maintenir.


3. Noeud Verification d'attribut

Ce noeud verifie un attribut specifique du contact dans le CRM avant de poursuivre.

Configuration

  1. Ajoutez un noeud Verification d'attribut sur le canevas.
  2. Selectionnez l'attribut du contact a verifier :
    • Attributs systeme : nom, prenom, telephone, e-mail, langue
    • Attributs personnalises : tout champ ajoute dans votre CRM
    • Tags : presence ou absence d'un tag specifique
  3. Choisissez l'operateur et la valeur de reference.
  4. Connectez les sorties Vrai et Faux.

Conditions combinees (ET / OU)

Vous pouvez combiner plusieurs conditions dans un seul noeud pour creer des regles complexes.

Operateur ET (toutes les conditions doivent etre vraies)

  1. Dans le panneau de configuration du noeud Condition, cliquez sur Ajouter une condition.
  2. La nouvelle condition apparait avec un connecteur ET.
  3. Configurez la deuxieme condition.
  4. Le noeud ne renverra Vrai que si toutes les conditions sont remplies simultanement.

Operateur OU (au moins une condition doit etre vraie)

  1. Ajoutez une condition supplementaire.
  2. Cliquez sur le connecteur entre les deux conditions.
  3. Basculez de ET a OU.
  4. Le noeud renverra Vrai si au moins une des conditions est remplie.

Groupes de conditions

Pour des logiques complexes, vous pouvez creer des groupes :

Groupe A (ET)
- {{langue}} est egal a "fr"
- {{pays}} est egal a "France"

OU

Groupe B (ET)
- {{langue}} est egal a "fr"
- {{pays}} est egal a "Belgique"

Cela equivaut a : le contact parle francais ET se trouve en France OU en Belgique.


Conditions basees sur le temps

Vous pouvez utiliser des conditions temporelles pour adapter le comportement du chatbot.

Heures d'ouverture

  1. Ajoutez un noeud Condition.
  2. Selectionnez la source Heure actuelle.
  3. Definissez la plage horaire :
    • {{heure_actuelle}} est superieur ou egal a 09:00
    • ET {{heure_actuelle}} est inferieur a 18:00
  4. Sortie Vrai : le chatbot repond normalement.
  5. Sortie Faux : le chatbot envoie un message hors horaires et propose de laisser un message.

Jour de la semaine

VariableValeurs possibles
{{jour_semaine}}lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche
{{jour_numero}}1 (lundi) a 7 (dimanche)

Date specifique

Utilisez la variable {{date_actuelle}} pour verifier des dates precises (jours feries, evenements, etc.).


Conditions basees sur les reponses

Verifier la derniere reponse

Apres un noeud Question, la reponse du contact est stockee dans une variable. Utilisez une condition pour l'evaluer.

  1. Placez un noeud Question (ex : "Quel est votre numero de commande ?").
  2. La reponse est enregistree dans la variable configuree (ex : {{numero_commande}}).
  3. Ajoutez un noeud Condition pour verifier le format :
    • {{numero_commande}} correspond a ^CMD[0-9]{6}$
  4. Sortie Vrai : poursuivre le traitement.
  5. Sortie Faux : demander au contact de ressaisir son numero.

Verifier un choix de bouton ou de liste

Lorsque le contact clique sur un bouton ou un element de liste, la valeur selectionnee est automatiquement stockee. Utilisez un noeud Aiguillage pour router selon le choix.

Information

Les boutons et listes WhatsApp retournent l'identifiant (ID) de l'element selectionne, pas le texte affiche. Configurez vos conditions sur l'identifiant et non sur le libelle.


Boucles et retours en arriere

Les conditions permettent egalement de creer des boucles controlees.

Boucle de validation

  1. Posez une question au contact.
  2. Verifiez la reponse avec une condition.
  3. Si la reponse est invalide, renvoyez le flux vers le noeud de question.
  4. Ajoutez un compteur de tentatives pour eviter les boucles infinies.

Limiter le nombre de tentatives

  1. Creez une variable {{tentatives}} initialisee a 0.
  2. A chaque boucle, incrementez la variable de 1.
  3. Ajoutez une condition : {{tentatives}} est superieur a 3.
  4. Sortie Vrai : transferer vers un agent humain.
  5. Sortie Faux : reposer la question.
Attention

Evitez les boucles infinies. Prevoyez toujours une sortie apres un nombre limite de tentatives. Une boucle sans sortie peut bloquer le contact dans un etat dont il ne peut pas sortir.


Cas d'utilisation courants

Routage par langue

Condition : {{contact.langue}}
- "fr" --> flux en francais
- "en" --> flux en anglais
- "ar" --> flux en arabe
- Defaut --> flux en francais

Qualification de prospect

Question : "Combien d'employes avez-vous ?"
Condition : {{nombre_employes}}
- superieur a 50 --> transfert equipe entreprise
- entre 10 et 50 --> transfert equipe PME
- inferieur a 10 --> reponse automatique pour TPE

Verification d'identite

Question : "Quel est votre e-mail ?"
Condition : {{email_saisi}} est egal a {{contact.email}}
- Vrai --> acces au compte
- Faux --> deuxieme tentative ou transfert agent

Prochaines etapes

Besoin d'aide ?

Si vous rencontrez un probleme avec les conditions, contactez notre equipe support via le chat en bas a droite de l'application ou envoyez un e-mail a [email protected].