# Blocs et types

## Comment travailler avec les blocs

{% hint style="info" %}
MaviBot vous permet de créer un chatbot en concevant sa structure sous forme d’organigramme composé de blocs et de flèches.
{% endhint %}

Un **bloc** représente une action ou un événement que le bot doit traiter ou exécuter.

{% hint style="danger" %}
**Veuillez noter !**

**Limites des blocs :**\
La limite totale par organigramme ne dépasse pas **500 blocs** des types suivants :

* **bloc Départ**
* **Bloc déclencheur**
  {% endhint %}

Il existe des connexions entre les blocs, où vous pouvez définir une condition et/ou l’heure exacte de transition vers le bloc suivant.

{% hint style="info" %}
**Blocs conditionnels** servent à déclencher le bot dans des conditions spécifiques.\
**Blocs inconditionnels** fonctionnent uniquement lorsqu’ils sont atteints via des flèches ou des callbacks (que nous aborderons plus tard).
{% endhint %}

{% hint style="warning" %}
**Veuillez noter !**

**Les blocs et les connexions ont une priorité d’exécution !**\
Les blocs qui ont une condition définie seront toujours exécutés en premier.

**Priorité d’exécution des blocs et des flèches :**\
Le **« Départ »** le bloc est toujours exécuté en premier :

* D’abord, le **« Départ »** bloc avec une condition définie dans le champ de condition est exécuté.
* Ensuite, s’il existe, le **« Départ »** bloc sans condition est exécuté.

Ensuite, la Connexion à partir du bloc où se trouve actuellement le client est exécutée (si le client est déjà dans le tunnel).\
Puis :

* un autre  **« Départ »** bloque
* Le **« Déclencheur »** bloc

Si aucune réponse correspondante n’est trouvée et que l’ **assistant IA** est activé, l’assistant répondra (si la condition de lancement le permet).
{% endhint %}

<div data-with-frame="true"><figure><img src="/files/46acf20b407bb64c46a8952deac48cef44cd638e" alt="" width="267"><figcaption></figcaption></figure></div>

**Tous les blocs partagent une structure unifiée :**\
Chaque bloc contient une liste de sections que vous pouvez activer ou désactiver selon vos besoins.

<div data-with-frame="true"><figure><img src="/files/171843795282f276fc916fd6aaed2be8521d4342" alt=""><figcaption></figcaption></figure></div>

Le **Message** la section vous permet de spécifier le texte du message.\
Vous pouvez utiliser des variables dans le texte en appliquant le format suivant : `#{nom_de_variable}`.

## **Menu contextuel**

Chaque bloc dispose d’un menu contextuel qui vous permet d’effectuer des actions spécifiques sur le bloc, notamment :

<div data-with-frame="true"><figure><img src="/files/ea2bcef45e506b9dcd362d19945a37ceba45a662" alt="" width="563"><figcaption></figcaption></figure></div>

* **Copie du bloc :**

<div data-with-frame="true"><figure><img src="/files/f5436a1b5e08ab32a1be84458846f3c3f3b822c7" alt="" width="563"><figcaption></figcaption></figure></div>

* **Suppression du bloc :**

<div data-with-frame="true"><figure><img src="/files/a027063dc31f99456f42e2648bf9ad9db0861197" alt="" width="563"><figcaption></figcaption></figure></div>

* **Copie du bloc avec liaison**&#x20;

<div data-with-frame="true"><figure><img src="/files/7959a702c42666b0e764ec440701b05d0d8c2274" alt="" width="563"><figcaption></figcaption></figure></div>

* **Déplacement vers une autre feuille :**

<div data-with-frame="true"><figure><img src="/files/0d6bacab430ef94634b51f7839e9631f4926b8cd" alt="" width="563"><figcaption></figcaption></figure></div>

{% hint style="success" %}
**Priorité des blocs/transitions par ordre décroissant :**\
· Début\
· Connexions\
· Déclencheur
{% endhint %}

Examinons de plus près chaque type de bloc : comment les créer et à quoi ils servent.\
Pour créer le premier bloc, il suffit de double-cliquer avec le bouton gauche de la souris sur l’espace de travail de l’éditeur (par défaut, un bloc Début sera créé), ou de sélectionner le type de bloc dans le menu.

Examinons chacun d’eux de plus près.

## **Bloc de chat**

{% hint style="info" %}
Si le bloc ne doit contenir aucun texte, saisissez `#{none}` dans le champ de réponse (c’est la valeur par défaut).
{% endhint %}

**État du dialogue :** un bloc blanc sans condition.\
Vous pouvez entrer dans ce bloc uniquement via une flèche. Il est destiné aux réponses intermédiaires, aux branchements et à l’envoi de plusieurs messages les uns après les autres à des intervalles de temps spécifiques.

<div data-with-frame="true"><figure><img src="/files/c90a4a5e0aec7d8de294068eae87dd8cce1e2976" alt=""><figcaption></figcaption></figure></div>

## **bloc Départ**

**Condition initiale :** un bloc vert vif avec la priorité la plus élevée.\
Toute la séquence du bot peut également commencer à partir de ce bloc. La principale différence avec le **Début du dialogue** bloc est que les conditions dans ces blocs sont vérifiées en premier. Si le client saisit un mot-clé ou une expression de ce bloc pendant la conversation, il y sera immédiatement redirigé.

Exemple de configuration de la réaction du bot à une salutation du client :

<div data-with-frame="true"><figure><img src="/files/8af3e7a21fbb4160105f6b2fa93f0c156bda7d73" alt=""><figcaption></figcaption></figure></div>

Le client recevra le message **"Bonjour !"** en réponse.

## Bloc Leads

Le bloc Leads est un bloc sans condition, de couleur rouge.

L’objectif principal de ce type de bloc est de créer une demande (lead). Lors du passage à ce bloc, toutes les données collectées jusqu’à ce moment-là (valeurs des variables) concernant l’utilisateur sont envoyées au système CRM, par e-mail, sur WhatsApp personnel ou Telegram (ou tout autre contact indiqué dans les paramètres du projet) sous forme de demande prête à l’emploi. Après le transfert, les valeurs des variables de l’affaire sont supprimées du constructeur.

<div data-with-frame="true"><figure><img src="/files/14e17295fb5a813cfb39fd06378eb14e7004e368" alt=""><figcaption></figcaption></figure></div>

## Déclencheur

**Bloc déclencheur** est un bloc gris foncé.\
Sur le plan fonctionnel, il est similaire au bloc Début bloc, à la seule différence que le client ne passe pas dans ce bloc.

<div data-with-frame="true"><figure><img src="/files/1dbfbeda4df1ef9b0a30168b16eeb5abc06b4b63" alt=""><figcaption></figcaption></figure></div>

{% hint style="info" %}
La priorité de ce bloc, par rapport aux autres blocs conditionnels, est la plus basse — ce qui signifie qu’il sera déclenché en dernier.
{% endhint %}

## Repli

**Bloc de repli** est un bloc gris. Il n’a pas de conditions comme le **Déclencheur t** bloc, et il n’est pas possible d’y entrer.

<div data-with-frame="true"><figure><img src="/files/428a2bb32e8a055df9302215563d659aca15457c" alt=""><figcaption></figcaption></figure></div>

{% hint style="warning" %}
Vous pouvez utiliser les blocs de repli pour créer une connexion temporisée ou, par exemple, pour valider les données saisies par les clients ! Comme l’utilisateur ne peut pas entrer dans ces blocs, il ne peut pas non plus quitter le flux principal.

Les blocs de repli peuvent également être utilisés pour déclencher des séquences de diffusion.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/fr/chatbot/builder/setting/types.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
