Nous développons une nouvelle fonctionnalité Workflows, conçue pour prendre en charge des tâches complexes que notre outil d’Automatisations existant ne peut pas gérer. Ce nouvel éditeur d’automatisation visuel vous permet de créer des workflows multi-étapes avec des délais, des branches conditionnelles, des appels à des services externes et des actions IA directement dans votre espace d’administration.
Workflows est disponible sur les plans Business et Enterprise, pour les utilisateurs de l’hébergement Discourse.
Présentation de Workflows
Workflows remplace l’approche axée sur le script de l’extension d’Automatisations existante par un canevas visuel basé sur des nœuds que vous connectez pour créer une logique complexe et multi-étapes.
Déclencheurs : initient un workflow en réponse à des événements dans Discourse (par exemple, création d’un sujet, ajout d’un utilisateur à un groupe, etc.), à un planning prédéfini, à un webhook ou à une action manuelle.
Conditions : créent des branches dans le workflow basées sur une logique oui/non pour n’importe quelle donnée du workflow.
Actions : sont des événements déclenchés par le workflow, tels que l’envoi d’un message privé ou de message de chat, la publication d’une réponse, l’appel d’un point de terminaison HTTP, l’exécution d’un agent IA ou l’interrogation de Data Explorer.
Utilitaires : contrôlent le flux lui-même en définissant des délais, en itérant sur des éléments et en définissant des variables, et peuvent aider à documenter le workflow avec des notes adhésives.
Les paramètres de chaque nœud prennent en charge des valeurs littérales et des expressions dynamiques, vous permettant ainsi de référencer la sortie de tout nœud précédent, les variables du workflow ou le contexte d’exécution d’une étape antérieure dans une étape ultérieure.
Workflows inclut quelques outils supplémentaires pour faciliter la création et la gestion de leur sortie :
Variables : sont des paires clé/valeur stockées (par exemple, identifiants de groupe, identifiants de catégorie, etc.) facilement disponibles dans tous les workflows pour une configuration plus simple.
Identifiants : c’est l’endroit où vous pouvez stocker des configurations d’authentification réutilisables pour les nœuds de requêtes HTTP, afin de ne pas avoir à coller vos clés API dans vos workflows.
Tables de données : sont utilisées pour stocker et interroger les données d’exécution, afin que vous puissiez suivre les exécutions (par exemple, voir si un workflow a déjà été exécuté sur un sujet spécifique) et référencer facilement la sortie d’un workflow.
Chaque exécution de workflow génère un journal complet dans l’onglet Exécutions. Vous pouvez voir quels nœuds se sont exécutés, quelles données ils ont reçues, ce qu’ils ont produit et où un workflow s’est arrêté si quelque chose a mal tourné.
Pour l’essayer, rendez-vous dans Changements à venir à /admin/config/upcoming-changes, trouvez l’élément Activer les workflows Discourse et mettez à jour le champ Activé pour… pour opter votre site pour cette fonctionnalité.
Ces quatre dernières semaines, nous avons développé certaines intégrations et automatisations à l’aide de cette nouvelle extension, et tout ce que je peux dire, c’est qu’elle est absolument fantastique et qu’elle change la donne pour Discourse. C’est vraiment la meilleure nouvelle fonctionnalité depuis des années (et il y a déjà pas mal de fonctionnalités incroyables ).
C’est un concept vraiment fou. J’ai passé beaucoup de temps à créer des intégrations puissantes entre n8n et Discourse. C’est une initiative incroyable qui va dynamiser Discourse.
J’adore les nouveaux flux de travail — c’est un véritable tournant, et ils peuvent également être couplés à des services comme n8n.
J’ai remarqué que la limite de débit est souvent atteinte — comment peut-on la modifier ?
Ensuite, je ne sais pas pourquoi, mais parfois le système s’arrête simplement de fonctionner, et la seule façon de le relancer est de désactiver la fonctionnalité, puis de la réactiver via les “changements à venir”.
Imaginez pouvoir créer un flux qui, en fonction du niveau de confiance des utilisateurs, permet des comportements dynamiques, comme ajouter un utilisateur à un troisième groupe lui donnant accès à une nouvelle catégorie s’il est membre de ces deux groupes simultanément.
Ce genre de comportements dynamiques est difficile à mettre en œuvre avec Discourse vanilla
J’aimerais savoir dans quelles situations il convient de continuer à utiliser les Automations + requêtes, et quand il faut réellement utiliser les Workflows. Prenons l’action suivante comme exemple :
Envoyer des messages privés aux utilisateurs dont le ratio lectures/publications dépasse 250:1 (et qui finiront par tomber dans le groupe “délisté”, aussi connu sous le nom de “lurkers”)
Quel outil est le plus efficace et/ou recommandé pour ce cas précis ? Quand dois-je utiliser les Automations + requêtes, et quand dois-je utiliser les Workflows ?
Je comprends que les Workflows permettent des décisions de branchement et permettent ainsi des diagrammes dynamiques ; pour commencer, j’aimerais savoir ce que pensent les utilisateurs expérimentés des cas plus simples.
Ce que @lindsey a dit, et aussi, si vous avez des cas d’utilisation que vous pouvez réaliser avec l’automatisation mais pas avec les workflows, faites-le nous savoir s’il vous plaît.
Ça serait vraiment sympa d’avoir une rubrique dédiée au partage de workflows ! Cela permettrait d’aider la communauté, de mieux comprendre toutes les mécaniques et surtout de donner de nouvelles idées pour de futurs projets. C’est juste une idée
Pour information: je trouve le module workflow très réussi, puissant et intuitive
J’aimerais savoir si c’est possible lorsque le statuts événement est complet il renomme automatiquement le nom de l’événement en ajoutant “complet”. Cela permettrait aux utilisateurs de voir directement les événements complet dans l’aperçu année par exemple cela évite de cliquer sur l’événement pour savoir si il reste des places. Sinon pour aller plus loin afficher le nombre de places dans le nom de l’événement. Après c’est mon ressenti pour améliorer l’utilisation auprès de mes utilisateurs