GLPI – Les notifications

Afin d’assurer le suivi des demandes d’assistance, GLPI doit être capable d’émettre des messages. On parle de notification à chaque fois qu’un message est émis. Ces notifications se paramètrent en fonction de nombreux événements. La configuration des notifications permet également à GLPI d’émettre des messages d’alerte liés à la gestion de parc (stock de cartouches, préavis de fins de contrats…).

GLPI intègre les fonctions de gestion des émissions de messages.

Pour gérer les émissions de messages, il serait possible de s’appuyer sur des composants de messagerie au niveau du système du serveur. Cela ne rentre pas dans le cadre de cet ouvrage, et ne sera donc pas traité ici.

1. Configuration du serveur d’émission

Pour configurer un serveur d’émission, il faut commencer par activer le suivi par mail :

 Placez-vous dans le menu Configuration – Notifications.

Si le suivi par courriel n’est pas activé :

 Cliquez sur le bouton Activer le suivi par courriel.

Vous arrivez ensuite sur le menu suivant :

 Cliquez sur le bouton Configuration des suivis par courriels.

Cette configuration se décompose en deux sections : Notifications et Serveur de messagerie.

Section Notifications

Elle permet de paramétrer les champs suivants :

Activer le suivi par courriel (Non/Oui) : ce champ permet de désactiver le suivi par courriel. Il permet de revenir à l’état initial, avant activation de la fonctionnalité.

Courriel de l’administrateur : ce champ permet de définir le courriel de l’administrateur de GLPI afin de le rendre destinataire de notifications et d’alertes.

Nom de l’administrateur : ce champ permet de préciser l’identité de l’administrateur, afin d’éventuellement communiquer cette information dans les courriels.

Courriel de réponse (si nécessaire) : ce champ permet de spécifier une adresse de réponse spécifique, différente de l’adresse d’émission.

Nom de réponse (si nécessaire) : ce champ permet de définir le nom associé au courriel de réponse spécifique.

Ajouter des documents dans les notifications de ticket : ce champ permet d’autoriser les pièces jointes.

Signature des messages : ce champ permet de personnaliser la signature des messages émis. Il est à noter que ce champ n’a d’utilité réelle que pour l’envoi de messages de test. En effet, l’utilisation des modèles de notifications permet une gestion beaucoup plus fine et avancée du contenu des messages.

Section Serveur de messagerie

C’est ici la définition de la partie technique des envois de messages.

Renseignez les champs :

Mode d’envoi des courriels (PHP/SMTP/SMTP+SSL/SMTP+TLS) : ce champ permet de définir sous quelle forme les courriels seront émis. La valeur PHP signifie que l’émission de messages utilise les fonctions de PHP-mail. Les autres valeurs correspondent à l’utilisation d’un relais d’émission SMTP, sans échange sécurisé pour la première et sécurisé pour les deux dernières.

Vérifier le certificat (Oui/Non) : ce champ donne la possibilité de prendre en compte un certificat SSL si celui-ci existe.

Hôte SMTP : ce champ permet de saisir l’adresse du serveur de messagerie utilisé pour effectuer l’envoi du message.

Port : ce champ permet de préciser le port utilisé pour l’envoi de messages. Par défaut le port associé est le port 25.

Identifiant SMTP (optionnel) : ce champ est utilisé dans le cas d’une connexion authentifiée au serveur de messagerie.

Mot de passe SMTP (optionnel) : comme pour le précédent, ce champ est utilisé lorsque la connexion au serveur de messagerie s’effectue en mode authentifié.

 Après avoir complété les différents champs, cliquez sur le bouton Sauvegarder.

En bas de cette page, un bouton permet de tester l’émission d’un message vers le courriel de l’Administrateur. Le courriel de l’administrateur doit au préalable avoir été précisé dans la configuration générale des notifications.

images/07RI10V3.PNG

2. Les modèles de notifications

Un modèle de notification correspond à un message type. Chaque modèle peut être utilisé pour différentes occasions de notification appelées événement. Par exemple, le modèle ticket pourra être utilisé lors de la création d’un ticket, mais également lors de l’ajout d’un suivi ou d’une tâche.

Les événements sont prédéfinis et actuellement non paramétrables dans l’interface. Pour chaque modèle de notification, il est possible de définir plusieurs traductions. Une traduction par défaut est déjà définie pour chaque modèle.

Description des modèles

La définition des modèles est générique pour l’ensemble de l’application. Leur utilisation dans les notifications se fera en revanche par entité.

 Placez-vous dans le menu Configuration – Notifications, lien Modèles de notifications.

La liste des modèles s’affiche. Pour découvrir le fonctionnement des modèles, la suite de la description s’appuie sur le modèle Projects.

 Cliquez sur le modèle Projects.

Un ticket est décrit par les champs suivants :

Nom : ce champ définit le nom du modèle. Il est ensuite utilisé pour désigner le modèle à utiliser lors de la définition des notifications.

Type : les modèles sont classés par type. Ce champ permet de désigner le type de modèle auquel appartient le modèle courant. Ce champ sera utilisé dans la définition des notifications pour créer un filtre sur les modèles disponibles et sélectionner l’événement déclencheur de la notification.

La liste des types de modèles est prédéfinie et non modifiable.

Commentaires : ce champ vous permet de décrire les conditions d’utilisation du modèle de notification.

CSS : ce champ permet de définir une feuille de style propre à ce modèle de notification.

images/07RI11V3.PNG

Un item Traductions de modèle permet d’ajouter une traduction personnalisée. Un lien Traduction par défaut est défini, de base, pour chaque modèle.

images/07RI12V3.PNG

Les traductions

La traduction par défaut reprend les éléments de base du ticket, au travers de balises. Il est possible de modifier le contenu du message par défaut.

 Placez-vous dans le menu Configuration – Notifications et cliquez sur le lien Modèles de notifications.

 Cliquez sur le modèle Projects.

 Cliquez sur l’item Traductions de modèles.

 Cliquez sur le lien Traduction par défaut.

Le contenu du message est présenté en mode texte et sous forme HTML.

Il est plus simple de modifier le contenu du message dans la fenêtre d’édition HTML. Pour que les modifications soient prises en compte dans le mode texte, vous devez supprimer le contenu de la fenêtre contenant ce code. Celui-ci sera automatiquement régénéré, lorsque vous cliquerez sur le bouton Sauvegarder.

Pour ajouter des données :

 Cliquez sur le bouton Voir la liste des balises disponibles.

images/07RI13V3.PNG

 Faites un copier-coller des balises que vous souhaitez intégrer dans le message.

images/07RI14V3.PNG

 Validez les modifications en cliquant sur le bouton Sauvegarder.

GLPI offre la possibilité de générer une traduction du message par langue.

GLPI utilisera automatiquement cette traduction pour envoyer une notification aux utilisateurs ayant le même paramètre de langue que la traduction.

 Dans l’item Traduction de modèle, cliquez sur le lien Ajouter une nouvelle traduction.

Une fenêtre de saisie du message s’affiche.

 Complétez les différents champs :

Langue : sélectionnez la langue pour laquelle cette traduction est éditée. L’intérêt des traductions repose sur la capacité de GLPI à émettre les messages dans la langue des utilisateurs lorsque cette information est saisie dans leurs données.

Sujet : il s’agit de définir dans ce champ l’objet du message émis. Ce champ peut contenir des balises pour personnaliser le message.

Corps texte du courriel : ce champ permet de saisir le contenu du message en mode caractère. Il est souvent plus simple de laisser ce champ vierge et de construire le message à partir du champ suivant.

Corps HTML du courriel : ce champ permet de construire le contenu du message. Il est possible d’y insérer des balises présentes dans la Liste des balises disponibles.

 Validez la création de la traduction en cliquant sur le bouton Ajouter.

Afin de faciliter la création des traductions, il est possible de faire un copier/coller de la définition de la traduction par défaut et de l’adapter ensuite.

images/07RI15V3.PNG

Les balises

Les balises proposées sont de trois types :

Les balises d’affichage simple : elles permettent d’afficher le libellé d’un champ ou sa valeur. La balise ##lang.project.action## affichera le libellé du champ « Événement » dans la langue associée à la traduction courante. La balise ##project.action## affichera la valeur de ce champ contenu dans la base de données.

Les balises conditionnelles : il est possible d’ajouter des tests dans la construction du modèle. Une balise simple sur laquelle est effectué le test est remplacée par deux balises, l’une de début de condition et l’autre de fermeture de la condition : ##project.action## sur lequel se base le test devient ##IFproject.action##=Réunion##   ##ENDIF##project.action##. Il suffit ensuite de placer le texte et les champs conditionnels entre ces deux balises. Il est également possible de définir une condition IF THEN ELSE sous la forme : ##IFproject.action##=Réunion##   Action1 ##ENDIF##project.action##. ##ELSEproject.action##=Réunion## Action2 ##ENDELSE##project.action##.

Les balises de boucles : ce mécanisme permet d’afficher une liste d’éléments comme par exemple la liste des réservations d’un demandeur, la liste des tickets en attente… Dans les notifications concernant les projects on trouve, parmi d’autres, la balise ##FOREACHteammembers## ##ENDFOREACHteammembers## : elle permet de lister chaque membre de l’équipe. Sur la base de ces balises, il est possible de spécifier le premier élément de cette liste : ##FOREACH FIRST teammembers## ou le dernier élément de cette liste : ##FOREACH LAST teammembers## ##ENDFOREACHteammembers##.

Ajout d’un nouveau modèle

Afin de permettre des envois de messages de notification spécifiques en fonction des entités, il est possible d’utiliser des balises conditionnelles ; toutefois il est parfois plus clair de créer un nouveau modèle de notification.

L’exemple suivant détaillera la création d’un modèle de notification spécifique pour l’ajout d’une réservation dans une entité. En effet, les informations relatives aux modalités pratiques de prêts de matériels sont différentes d’un site à l’autre, le contenu du message émis au demandeur sera donc différent et propre à chaque entité. Si vous souhaitez préciser ces modalités de prêt dans le message émis à l’occasion d’une réservation, le contenu du courriel devra être géré par entité, ou groupe d’entités ayant le même mode de fonctionnement.

 Placez-vous dans le menu Configuration – Notifications, lien Modèles de notifications.

images/02RIbouton017.PNG

 Cliquez sur le bouton Ajouter .

 Renseignez les champs de définition du modèle :

Nom : donnez un nom explicite afin de le distinguer dans la liste des modèles. Pour cet exemple, vous pouvez indiquer Reservations Barcelone.

Ce modèle pourra ensuite être utilisé à l’occasion de plusieurs événements en relation avec les réservations (nouvelle réservation, modification…).

Type : les modèles sont classés par type. Ce champ permet de désigner le type de modèle auquel appartient le modèle courant. Pour cet exemple choisissez Réservation. Ce choix permettra de définir l’événement de type Réservation pour le déclenchement de la notification.

Commentaires : ajoutez des commentaires pour préciser l’objet de ce modèle.

CSS : vous pouvez éventuellement utiliser une feuille de style pour adapter la présentation des notifications.

 Cliquez sur le bouton Ajouter.

Le modèle est créé, il faut maintenant ajouter des traductions.

images/07RI16V3.PNG

Pour ajouter la traduction par défaut :

 Si la fenêtre ne s’affiche pas automatiquement, cliquez sur l’item Traductions de modèles.

 Précisez les champs suivants :

Langue : pour créer la traduction par défaut de ce modèle, laissez la valeur par défaut (—-). Sinon pour créer une traduction, choisissez la langue concernée.

Sujet : ce champ sera le titre du message, il peut contenir des balises pour personnaliser le titre du message.

Corps du courriel : il existe deux manières de créer le modèle.

  • En mode texte : ce mode est réservé aux utilisateurs avertis. Le champ contient la description en mode texte. Si vous générez le contenu du courriel en mode HTML (voir ci-dessous), le contenu de ce champ sera généré automatiquement.
  • En mode HTML : ce mode est le plus simple à utiliser si vous souhaitez effectuer quelques mises en forme du courriel.

Le plus simple pour démarrer la génération de votre modèle est de faire un copier/coller du contenu d’un modèle similaire déjà défini et de l’adapter en fonction des spécificités.

Dans les deux cas vous pourrez récupérer la syntaxe des balises à insérer pour personnaliser le message en cliquant sur le bouton Voir la liste des balises disponibles (cette liste est adaptée au type du modèle).

 Validez l’ajout de la traduction en cliquant sur le bouton Ajouter.

images/07RI17V3.PNG

Votre modèle est prêt à être utilisé pour une entité donnée. La partie suivante décrit l’utilisation des modèles et la configuration du déclenchement des envois de messages.

3. Configuration des envois

Définition du contenu de l’envoi

Les modèles sont maintenant définis, la dernière étape consiste à paramétrer les notifications.

Contrairement aux modèles qui sont globaux pour l’ensemble de GLPI, les notifications sont gérées par entité avec possibilité de les étendre aux sous-entités correspondantes. Pour définir une notification pour l’ensemble de GLPI, vous devrez donc la créer dans l’Entité Racine et mettre le paramètre Sous-entités à Oui. Vous pourrez ensuite traiter les cas particuliers propres à certaines entités.

Dans la configuration par défaut la configuration des envois est déjà paramétrée pour l’ensemble de l’arborescence. Dans l’exemple ci-dessous, vous allez donc créer une notification suite à une nouvelle réservation propre à une entité donnée.

 Placez-vous dans l’entité dans laquelle vous souhaitez créer la notification (ici l’entité concernée est Entité Racine>Espagne>Barcelone).

 Placez-vous dans le menu Configuration – Notifications, cliquez sur l’item Notifications.

La liste des notifications s’affiche.

Cette liste couvre l’ensemble des événements prédéfinis dans l’application et les éléments sont tous positionnés à partir de l’Entité Racine de manière récursive. L’ajout d’une nouvelle notification ne pourra donc concerner qu’une définition au niveau d’une entité différente de l’Entité Racine.

images/02RIbouton017.PNG

 Cliquez sur le bouton Ajouter .

 Remplissez les différents champs :

Nom : ce champ permet de saisir le nom de la notification. Ce nom est son identifiant et apparaît dans la liste des notifications. Il doit donc être suffisamment explicite pour ne pas être confondu avec celui d’une autre notification.

Dans cet exemple, il y aura potentiellement autant de notifications définies pour les nouvelles réservations que d’entités. Saisir ici : Nouvelle réservation Barcelone.

Sous-entités : ce champ permet de définir si une notification s’applique aux sous-entités de l’entité dans laquelle elle a été créée.

Ici il n’y a pas de sous-arborescence, toutefois, si un découpage de l’entité de Barcelone en sous-entités est un jour mis en place, cette notification s’appliquera automatiquement : il est donc préférable de placer ce paramètre à Oui.

Commentaires : ce champ permet de saisir des commentaires, il ne faut pas hésiter à l’utiliser pour faciliter l’exploitation de GLPI.

Actif (Non/Oui) : ce champ permet de rendre active/inactive la notification.

Type : ce champ permet de sélectionner le type de notification, dans cet exemple Réservation. La sélection du type de notification entraîne la modification du contenu des deux listes déroulantes ci-dessous.

Mode de notification : ce champ permet de définir le mode de notification. Actuellement seules les notifications par courriel sont possibles. Il n’est pas exclu d’avoir un jour des notifications par SMS, télécopie…

Événement : ce champ permet de définir l’élément déclencheur. Il existe quatre événements associés au type Réservation Nouvelle réservationModification réservationAnnulation réservation et Expiration réservation.

Il existe par défaut dans GLPI une notification par événement.

Dans cet exemple vous devrez choisir Nouvelle réservation.

Modèle de notifications : ce champ permet de définir le modèle de notifications associé à cette notification.

Dans cet exemple, vous devrez choisir le modèle généré dans la partie précédente : Reservation Barcelone.

 Validez la création de la notification en cliquant sur le bouton Ajouter.

images/07RI18V3.PNG

Définition des destinataires de la notification

Lorsque la notification est créée, il est possible de préciser les destinataires de cette notification.

 Placez-vous dans le menu Configuration – Notifications, activez le lien Notifications.

 Sélectionnez la notification concernée (dans cet exemple Nouvelle réservation Barcelone).

 Cliquez sur l’item Destinataires.

 Au premier accès, un cadre vide s’affiche. Cliquez dans ce cadre pour obtenir une liste déroulante des destinataires potentiels. Un clic sur le destinataire suffit à le sélectionner. Celui-ci vient enrichir le cadre initial.

Pour retirer un destinataire sélectionné à tort, cliquez sur la croix à gauche du bouton correspondant pour le voir effacer du cadre de sélection.

La liste des destinataires potentiels est définie parmi les profils de l’application (Profil normalProfil admin…), certains rôles dans l’organisation (AdministrateurAdministrateur Entité…), le type d’événement concerné (Demandeur…) ou la nature de l’objet concerné (Responsable techniqueUtilisateur…). Cette liste varie donc d’une notification à l’autre.

images/07RI19V3.PNG

Le déclenchement des notifications

Les notifications sont déclenchées :

  • Soit à l’occasion d’un événement dans l’interface comme la validation de l’ajout d’un élément (une nouvelle réservation par exemple). Dans ce cas c’est une action d’un utilisateur qui déclenche la notification.
  • Soit à l’occasion du déclenchement d’une action automatique. Les actions automatiques surveillent un certain nombre de paramètres dans GLPI. Pour continuer avec l’exemple des réservations : l’émission d’une notification d’alerte sur les réservations afin d’informer les destinataires de l’imminence de la date de début de la réservation est surveillée par une action automatique. En effet aucune action sur l’interface ne va déclencher cette émission, il s’agit donc bien d’un processus interne et caché qui peut déclencher ce type de notification. Dans ce cas précis il s’agit de l’action automatique réservation qui gère les Alertes sur les réservations.

La configuration des actions automatique se fait dans le menu Configuration – Actions automatiques. Le fonctionnement de ces actions automatiques est décrit dans le chapitre La gestion de parc – Les actions automatiques.