Français
Aiguillage
Envoie le mail sur la première branche dont les conditions sont satisfaites, sinon sur la branche « sinon ».
L’Aiguillage envoie une branche vers l’une de plusieurs sorties nommées. Chaque règle a un nom, une liste de conditions et un réglage « Combinaison » (toutes les conditions ou au moins une). Les règles sont évaluées dans l’ordre et la première satisfaite l’emporte ; les suivantes ne sont pas évaluées. Si aucune ne l’est, l’exécution continue par otherwise.
Les conditions utilisent les mêmes champs et opérateurs que le nœud Condition (Si) : email.<champ> ou un chemin data.<chemin> produit en amont. Pour une simple décision oui/non, le nœud Condition est plus simple. Pour orienter selon le sens d’un mail plutôt que selon la valeur d’un champ, utilisez Catégoriser.
En bref
- Type :
flow.switch· version 1 - Catégorie : Logique
- Nature : Étape — s’exécute pendant une exécution
- Effet : Sans effet externe (
none) — rien n’est écrit hors de Mankomail ; rejouable sans risque - Exige un mail porteur : Non
- Connexion : Aucune
- Entrées :
main - Sorties : Calculées depuis les paramètres (avec les paramètres par défaut :
otherwise)
Paramètres
rules
Règles — Chaque règle donne son nom à une sortie du nœud. La première règle satisfaite gagne ; les suivantes ne sont pas évaluées.
- Type : Liste d’éléments (
collection) - Requis : Non
- De 1 à 20 éléments
- Chaque élément a :
name— Nom de la branche- Type : Texte (
string) - Requis : Oui
- 120 caractères au plus
- Exemple :
Urgent - Expressions :
{{ }}refusé
- Type : Texte (
match— Combinaison- Type : Un choix (
options) - Requis : Oui
- Défaut :
all - Options :
all— Toutes les conditionsany— Au moins une condition
- Type : Un choix (
conditions— Conditions- Type : Liste d’éléments (
collection) - Requis : Non
- De 1 à 50 éléments
- Chaque élément a :
field— Champ. Un champ du mail (email.subject,email.from.domain,email.attachments.mimeTypes) ou un chemin dans les données de travail (data.categorize_1.category,data.extract_text_1.count). Exemple : « a une PJ PDF » =email.attachments.mimeTypescontientapplication/pdf.- Type : Texte (
string) - Requis : Oui
- 200 caractères au plus
- Exemple :
email.attachments.mimeTypes
- Type : Texte (
op— Opérateur- Type : Un choix (
options) - Requis : Oui
- Défaut :
contains - Options :
eq— est égal àneq— n’est pas égal àcontains— contientstartsWith— commence parendsWith— finit pargt— est supérieur àlt— est inférieur àexists— est renseignématchesDomain— appartient au domaineisEmpty— est vide
- Type : Un choix (
value— Valeur- Type : Texte (
string) - Requis : Non
- 2000 caractères au plus
- Affiché quand :
opne vaut aucune deexists,isEmpty
- Type : Texte (
caseSensitive— Respecter la casse. Par défaut la comparaison ignore la casse ; les accents restent significatifs.- Type : Oui / non (
boolean) - Requis : Non
- Défaut :
false - Affiché quand :
opne vaut aucune deexists,isEmpty,matchesDomain
- Type : Oui / non (
- Type : Liste d’éléments (
Sorties
Calculées depuis les paramètres.
otherwise— Emprunté quand aucune règle n’est satisfaite. Toujours présent.case:<rule name>— Un port par règle, à son nom (une règle nomméeUrgentdessine le portcase:Urgent). Emprunté quand cette règle est la première dont les conditions sont satisfaites.
Données produites
Ce que ce nœud ajoute aux données de l’exécution, et comment le lire dans une expression. <step> désigne la clé de l’étape : le nom du nœud ramené à un identifiant (voir Données et expressions).
{{ data.<step>.branch }}—string. Le nom de la règle satisfaite, ounullquand la brancheotherwisea été empruntée.{{ data.<step>.matched }}—boolean.truequand une règle a été satisfaite,falsequand la brancheotherwisea été empruntée.
Example
Orienter les mails de fournisseurs selon le domaine de l’expéditeur. Renseignez rules ainsi :
1. name: Transporteur match: any conditions: email.from.domain appartient au domaine transporteur.example
email.subject contient suivi
2. name: Comptabilité match: all conditions: email.attachments.mimeTypes contient application/pdfLe nœud dessine trois sorties : case:Transporteur, case:Comptabilité et otherwise. Un mail de notifications.transporteur.example prend case:Transporteur même s’il porte aussi un PDF, car la première règle l’emporte. En aval, {{ data.<step>.branch }} vaut Transporteur.
Tips
- L’ordre des règles compte. Placez les règles les plus précises en premier.
- Le nom de la règle devient le nom du port : il ne peut donc pas contenir d’expression
{{ }}. Renommer une règle renomme son port : reconnectez la branche ensuite. - Deux règles de même nom partagent le même port et mènent donc à la même branche.
- Une règle sans nom est ignorée : elle ne dessine aucun port et n’est jamais évaluée.
- Les comparaisons de texte ignorent la casse par défaut ; un chemin
data.inexistant compte comme vide, exactement comme dans le nœud Condition.