Déclencheurs de notifications
Guide de création de déclencheurs de notifications
Définition
Les notifications sont des déclencheurs définis dans le backend sur des événements liés à des pages. Ils permettent de saisir un texte / un e-mail et de choisir à qui elles doivent être diffusées.
La création d'une notification se fait en deux étapes :
- Créer une règle de notification
- Créer une notification utilisant cette règle
Menu notifications
Dans le backend, il y a un item de menu notifications. Ce menu présente trois modules:
- Gestion des notifications web - mobile
- Gestion des notifications par mail
- Gestion des règles de notification
Règles de notification
Le menu d'administration des règles de notification permet de gérer les règles de déclenchement.
Il est possible de créer, supprimer, désactiver, modifier et dupliquer une règle.
Chaque règle est composée des informations suivantes :
- Nom : nom de la règle
- Page de la règle : page sur laquelle s'applique cette règle
- Événement déclencheur : événement qui déclenche la notification
- Condition du déclenchement : condition à respecter pour qu'une notification soit envoyée. Cette condition est écrite au format sql.
- Active : règle active ou non
Exemple:

Événement déclencheur
Les événements déclencheur permettent de définir à quel moment une règle est analysée. Les événements déclencheurs peuvent être regroupés en trois types :
- Événement sur le cycle de vie de la donnée : création, suppression, mise à jour et sauvegarde
- Événement récurrent : (heures, jours, semaines, mois)
- Programmé
Événement lié au cycle de vie d'un enregistrement
Les règles de notification liées à ce type d'événement sont évaluées en fonction du cycle de vie de la donnée :
- Création : création d'un nouvel enregistrement
- Suppression : suppression d'un enregistrement
- Mise à jour : modification d'un enregistrement
- Sauvegarde : création ou modification d'un enregistrement
À chacun de ces événements la condition de déclenchement est évaluée, si la condition est valide une notification est envoyée.
Événement récurrent
Ce type d'événement est contrôlé à une fréquence régulière : toutes les heures, tous les jours ou tous les mois.
A chaque occurrence, la condition paramétrée est vérifiée si elle est valide une notification est envoyée.
Tant que la condition est valide, une notification est envoyée à la fréquence sélectionnée. L'envoi de notifications s'arrête une fois la condition invalidée.
Les dates et heures de contrôle d'une règle sont déterminées à partir de la date et heure sélectionnée dans le formulaire.

Heures
La condition est contrôlée :
- Une fois par heure
- À l'heure sélectionnée
- À partir de la date sélectionnée.
Jours
La condition est contrôlée :
- Une fois par jour
- À l'heure sélectionnée
- À partir de la date sélectionnée
Semaines
La condition est contrôlée :
- Une fois par semaine
- Au jour correspondant à la date sélectionnée (si la date sélectionnée est un jeudi le contrôle est tous les jeudis)
- À l'heure sélectionnée
- À partir de la date sélectionnée
Mois
La condition est contrôlée :
- Une fois par mois
- Au jour correspondant à la date sélectionnée (si la date sélectionnée est le 01/01/2022, le contrôle est effectué tous les 1 du mois)
- À l'heure sélectionnée
- À partir de la date sélectionnée
Si le jour sélectionné est un 28, 29, 30 ou 31, lorsque le mois est plus court, la notification est envoyée le dernier jour du mois. Exemple : si le 31 est sélectionné, la règle est contrôlée le dernier jour de chaque mois (même pour les mois à 30 jours)
Événement programmé
Les règles concernant un événement programmé sont contrôlées toutes les 5 minutes jusqu'à la validation de la condition.
Une fois la condition validée pour un enregistrement, la notification n'est pas renvoyée pour cet enregistrement tant que la condition est valide.
Lorsque la condition est invalidée, la règle est réinitialisée pour cet enregistrement.
Si la condition redevient valide, une nouvelle notification est envoyée.
Rappel
Pour les événements programmés, il est possible de paramétrer un rappel.

Tant que la condition de la règle programmée est valide, une notification est envoyée à la fréquence paramétrée.
Conditions
On peut définir une condition de déclenchement en plus de l’événement. Les conditions sont écrites au format sql. On a accès à tous les champs accessible via la requête de la page sélectionnée (tables jointes).
Voici un exemple de code sql de notifications :
projets.statprod LIKE '%OUI%'
Notification
Le module d'administration des notifications permet de gérer les notifications envoyées sur le web ou sur le mobile.
Il est possible de créer, supprimer, désactiver, modifier et dupliquer une notification.
Une notification est définie par :
- Nom : Nom de la notification
- Règle : la règle permettant de déclencher la notification
- Titre : titre de la notification
- Type : type de la notification
- Message : le message de la notification
- Destinataires dynamiques : destinataires présents dans les données de la page
- Utilisateurs : Utilisateurs concernés par la notification
- Profils : Profils d'utilisateur concernés par la notification
- Champs disponibles : liste des champs disponibles pour être utilisés dans le titre et le message de la notification
Champs disponibles
Cette section permet de choisir les champs disponibles sous forme de placeholders dans les titres et messages des notifications. La liste des champs utilisables s'affiche à la sélection d'une règle. Pour utiliser un champ, il faut l'activer puis inclure son alias dans le titre ou le message de la notification.
Exemple:

Exemple de titre d'une notification :
Projet ${projets.numero_projet} modifié
Lors de la création de la notification, ${projets.numero_projet} sera automatiquement remplacé par la valeur en base de donnée.

Utilisateurs
La section Utilisateurs permet de cibler des utilisateurs du projet.
Profils
La section Profils permet de cibler des profils du projet pour un envoi à tous les utilisateurs rattachés à ce profil.
Destinataires dynamiques
La section destinataires dynamiques permet de choisir des champs de type utilisateur disponibles dans la page (ou celles liées) pour envoyer la notification de manière automatique aux utilisateurs.
Exemple:

Notification par mail
Le module d'administration des notifications par mail permet de gérer les notifications envoyées par mail.
Il est possible de créer, supprimer, désactiver, modifier et dupliquer une notification par mail.
La configuration d'une notification par mail est similaire à la notification web, elle propose deux fonctionnalités supplémentaires : joindre des pièces et définir des destinataires hors projet.
Destinataires hors projet
Cette section permet de saisir des adresses mails supplémentaires.
Exemple :

Pièces jointes
La section pièce jointe permet de joindre des fichiers aux mails envoyés. Les fichiers disponibles sont les champs upload et multi-upload.

