Skip to content

Déclencheurs

Un déclencheur est ce qui démarre une exécution de flux de travail. Chaque flux de travail en a besoin d'au moins un. GCM est livré avec environ deux douzaines de déclencheurs intégrés couvrant les membres, la présence, les dons, les formulaires, les planifications et les webhooks externes.

Groupes de déclencheurs

GroupeQuand il se déclenche
InstantanéJuste au moment où un événement se produit dans la base de données (membre créé, don enregistré, etc.)
PlanifiéSur une expression cron ou une date future unique
ManuelQuand un administrateur démarre manuellement le flux de travail

Déclencheurs instantanés (membre)

DéclencheurSe déclenche quand
member.createdUn nouvel enregistrement de membre est sauvegardé
member.updatedN'importe quel champ d'un membre change
member.deletedUn membre est supprimé logiquement
member.birthdayLa date_of_birth d'un membre correspond à la date d'aujourd'hui
member.marked_lostlost_at est défini sur un membre
member.recoveredlost_at est effacé sur un membre précédemment perdu
member.type_changedLe type de membre change (ex. Visiteur → Membre)
member.unit_assignedUn membre est ajouté à une unité organisationnelle
member.unit_removedUn membre est retiré d'une unité organisationnelle
member.group_assignedUn membre est ajouté à un petit groupe
member.group_removedUn membre est retiré d'un petit groupe
member.ministry_assignedUn membre est ajouté à un ministère
member.ministry_removedUn membre est retiré d'un ministère
member.school_enrolledUn membre commence un programme scolaire
member.school_graduatedUn membre termine un programme scolaire
member.school_removedUn membre est retiré d'un programme scolaire
member.note_addedUne note est ajoutée au profil d'un membre
member.taggedUne étiquette est ajoutée à un membre

Déclencheurs instantanés (présence et dons)

DéclencheurSe déclenche quand
attendance.markedUn membre est enregistré à une réunion
attendance.removedUne ligne de présence est supprimée
giving.recordedUn don est créé (manuel ou en ligne)
donation.refundedUn don est remboursé

Déclencheurs instantanés (autres)

DéclencheurSe déclenche quand
event.createdUn événement de calendrier est créé
form.submittedUn formulaire public est soumis (ex. formulaire visiteur)
webhook.receivedUn système externe POSTe vers l'URL de webhook entrant de votre église

Déclencheurs planifiés

DéclencheurQuand
scheduleCron récurrent — ex. chaque lundi 9 h
schedule.onceUn moment futur unique
scheduled_queryRequête périodique sur la base de données (ex. contrôle nocturne aucune présence depuis 6 semaines)

Le déclencheur schedule utilise la syntaxe cron standard. Nous la traduisons dans le fuseau horaire de votre église (défini dans Paramètres → Organisation), donc 0 9 * * 1 signifie « 9 h lundi dans l'heure locale de votre église ».

Déclencheurs manuels

DéclencheurQuand
manualUn administrateur clique sur le bouton de lancement immédiat
manual_enrollmentUn administrateur inscrit un ou plusieurs membres directement

Utile pour les envois ponctuels — ex. un message « nous avons un changement de service demain ».

Configuration du déclencheur

La plupart des déclencheurs ont une configuration supplémentaire :

  • Filtres — ne se déclenchent que si des conditions supplémentaires sont remplies. Ex. member.created où le type de membre est Visiteur.
  • Portée par unité organisationnelle — ne se déclenche que pour les membres dans des unités spécifiques.
  • Portée par type d'adhésion — ne se déclenche que pour les visiteurs, membres, leaders, etc.

Ces filtres sont évalués avant qu'une exécution soit mise en file — les événements non correspondants sautent le flux de travail sans créer de ligne d'exécution.

Sujet et jetons

Chaque déclencheur se déclenche avec un sujet — généralement le membre que l'événement concerne. Ce sujet est disponible dans tout le flux de travail comme jetons de fusion :

  • {{trigger.member.first_names}} — pour un déclencheur membre.
  • {{trigger.donation.amount}} — pour giving.recorded.
  • {{trigger.attendance.meeting.name}} — pour attendance.marked.

Le sélecteur de jetons affiche ce qui est disponible selon le déclencheur que vous avez choisi.

Flux de travail multi-déclencheurs

Un flux de travail peut avoir plusieurs déclencheurs qui convergent tous vers la même séquence d'actions. Schéma courant :

  • Accueillir les nouveaux arrivants avec à la fois member.created et member.recovered comme déclencheurs, tous deux menant à un envoi « bienvenue ».

Les deux déclencheurs se connectent à un nœud de jonction de déclencheurs qui se ramifie vers les actions partagées.

Garde-fous de fréquence

Certains déclencheurs se déclenchent beaucoup. member.updated se déclenchera chaque fois que quiconque touche n'importe quel champ. Pour éviter les flux de travail incontrôlables :

  • Utilisez des filtres de déclencheur pour restreindre l'éligibilité (seulement quand le statut change).
  • Utilisez la limitation de débit au niveau du flux de travail — au plus N exécutions par membre et par jour.
  • Utilisez des clés d'idempotence sur les actions d'envoi de message pour que les nouvelles tentatives ne dupliquent pas.

WARNING

Erreur classique : un flux de travail qui met à jour un champ personnalisé sur member.updated, causant une boucle infinie. Le constructeur vous avertit si vous créez ce schéma ; veuillez prêter attention à l'avertissement.

Questions courantes

Puis-je déclencher sur un changement de champ personnalisé ? Oui — utilisez member.updated avec un filtre sur la clé spécifique du champ.

Pourquoi mon flux de travail member.created ne s'exécute-t-il pas pour les membres importés en masse ? L'import en masse saute les déclencheurs de flux de travail par défaut pour éviter de messager tout le monde pendant une migration. Il y a une case à cocher sur l'écran de revue de l'import pour s'y inscrire.

Un seul événement peut-il déclencher plusieurs flux de travail ? Oui. Chaque flux de travail avec un déclencheur correspondant se déclenche indépendamment. L'ordre n'est pas garanti.

Prochaines étapes