OpenBotsDocs
03 Dashboard06 Flows

Quel bloc choisir ?

Quand plusieurs blocs se ressemblent : où ranger une valeur, quel bloc pour envoyer un message, tirer au hasard, attendre, gérer un rôle.

🧭 Quel bloc choisir ?

Certains blocs se ressemblent : ils ont l'air de faire la même chose, mais chacun répond à un besoin précis. Cette page dit lequel prendre. Dans l'éditeur, une phrase d'aide s'affiche aussi quand tu survoles un bloc de la palette, et sous son titre quand tu le sélectionnes.


🗄️ Où ranger une valeur ?

Trois vraies notions de stockage. Le bon dépend de combien de temps la valeur doit vivre.

EndroitDure combien de temps ?Pour quoi faireComment l'utiliser
Variable d'un flowLe temps d'une exécution : chaque déclenchement repart de zéroCalculer, transformer, passer une valeur d'un bloc au suivant — y compris un tableau (une variable à une ligne par élément)Blocs Définir une variable, Transformer un texte ; se lit avec {nom}
Variable du serveur ou MémoireConservée d'une exécution à l'autreUne seule information (un compteur, une date, un état) — la mémoire sait compter et distinguer un membre d'un autre, la variable du serveur nonLe « + » gris sur une variable inconnue, ou blocs Écrire/Lire la mémoire
ListeConservée, avec plusieurs champs par élémentDes éléments nommés qui ont chacun des caractéristiques (les objets d'un jeu avec attaque, rareté, prix)Onglet Listes de l'éditeur, blocs Lire / Tirer / Modifier / Afficher / Pour chaque élément d'une liste

Il n'y a pas de 4ᵉ notion « tableau ». Un tableau, dans cet éditeur, c'est simplement une variable de flow à une ligne par élément — le même format qu'utilisent déjà « Choisir un texte au hasard » et « Aiguillage ». « Transformer un texte » sait le compter/l'indexer/le tester, et « Pour chaque ligne d'un texte » sait le parcourir (voir plus bas) — pas besoin d'inventer un nouveau mot ni une nouvelle catégorie pour ça.

En deux questions :

  1. La valeur doit-elle survivre au prochain déclenchement ? Non → variable d'un flow (au besoin, un tableau : une ligne par élément). Oui → question 2.
  2. C'est une seule information, ou un ensemble d'éléments qui ont chacun plusieurs champs ? Une information → mémoire (ou variable du serveur si c'est un réglage que tu modifies rarement). Un ensemble à champs → liste.

✉️ Quel bloc pour envoyer un message ?

BlocQui le voit ?À utiliser pour
Envoyer un messageTout le salonUn texte, des fichiers, un bouton facultatif
Envoyer un embedTout le salonUn message mis en forme : titre, couleur, image, champs
Envoyer un panelTout le salonPublier un panel préparé dans le Panel Builder (ses boutons, ses menus)
Envoyer un message privéLe membre seul, dans ses messages privésPrévenir un membre en dehors du serveur. Peut échouer (messages privés fermés) : prévois la sortie échec
Répondre en privéLe membre seul, dans le salon (message éphémère)Confirmer une action sans encombrer le salon (« rôle ajouté »). Il faut une interaction : bouton, menu, formulaire

Règle simple : si le membre vient de cliquer quelque part et que tu veux lui répondre discrètement, c'est Répondre en privé. Pour parler à tout le monde, Envoyer un message ou Envoyer un embed. Pour joindre quelqu'un qui n'est pas en train d'interagir, Envoyer un message privé.


🎲 Quel bloc pour tirer au hasard ?

BlocCe qu'il tireRésultat
Tirage au sortUn cheminLe flow part vers la sortie A ou B, selon un pourcentage
Choisir un texte au hasardUn texte parmi ceux que tu écrisLe texte, dans une variable
Tirer un élément d'une liste au hasardUn élément d'une liste du serveurSes champs, en variables ; avec un poids et un filtre si tu veux

Je veux une chance sur cinq de faire quelque chose → Tirage au sort. Je veux une phrase de bienvenue différente à chaque fois → Choisir un texte au hasard. Je veux un objet, avec ses caractéristiques, plus ou moins rare → Tirer un élément d'une liste.


🔁 Quel bloc pour parcourir plusieurs éléments ?

Trois boucles, une par type d'élément parcouru — pas un seul bloc à « source », parce que ce que chacune pose en variables est différent (un membre Discord, une simple ligne, ou un élément à plusieurs champs).

BlocParcourtVariables dans le corps
Pour chaque membre ayant ce rôleDes membres du serveur{user}, {mention}… (comme n'importe quel membre du flow)
Pour chaque ligne d'un texteUn tableau (texte, une ligne par élément){line} (ou le nom choisi)
Pour chaque élément d'une listeUne liste du serveur{item}, {item_name}, {item_champ}… (comme « Lire un élément d'une liste »)

Les trois se règlent pareil (nombre maximum d'éléments, pause entre deux, actions sensibles à autoriser explicitement) : voir Boucle.


⏳ Quel bloc pour attendre ?

BlocAttendAttente maximaleSurvit à un redémarrage du bot ?
AttendreSimplement du temps5 minutesNon
Attendre une réponseQue le membre réponde (message ou réaction)15 minutesNon
Continuer plus tardDu temps, puis reprend la suite90 joursOui

Pour « 3 jours après l'arrivée, envoyer un message de suivi », il n'y a qu'un bloc possible : Continuer plus tard. Pour annuler cette attente si la situation a changé, Annuler une attente.


👤 Quel bloc pour gérer un rôle ?

BesoinBloc
Donner un rôle pour de bonAjouter un rôle
Retirer un rôleRetirer un rôle
Bouton qui donne le rôle, ou le reprend s'il l'a déjàAjouter ou retirer un rôle
Un rôle qui s'efface tout seul après une duréeDonner un rôle temporaire
Retrouver ses rôles quand un membre revientMémoriser les rôles du membre au départ, puis Rendre les rôles mémorisés à l'arrivée

🔀 Un chemin, plusieurs chemins, un message précis

BesoinBloc
Deux issues, vrai ou fauxCondition
Plus de deux cas (8 au plus), un par valeur qui correspond exactement (ou contient/commence/finit par)Aiguillage (plusieurs cas)
Plus de deux cas, mais le choix demande du jugement (pas une simple comparaison de texte)Décider avec l'IA — coûte un appel IA, plafonné par serveur
Réagir à n'importe quel message selon sa nature (lien, pièce jointe, longueur…)Déclencheur Message envoyé
Réagir à un message qui contient un mot ou une phraseDéclencheur Message avec un mot-clé

On this page