====== Présentation du module ====== Le module routeur permet à EzGED d'envoyer des données vers des services externes ou d'autres applications. Il s'appuie sur deux types d'objets: * Les [[#services]] * Les [[#connecteurs]] Pour schématiser les services s'occupent du quoi (quelles données on envoi) et les connecteurs du comment (comment communique t-on avec la destination). L'idée est que les services peuvent-être compatibles avec plusieurs connecteurs mais ce n'est pas une obligation. Certains services comme l'envoi de mail sont de part leur nature ouvert à plusieurs implémentations (et c'est d'ailleurs le cas en standard puisque EzGED propose deux connecteurs compatibles). D'autres services plus spécifiques pourraient forcer l'utilisation d'un connecteur spécifique. La nature des données envoyées tout comme les "services" vers lesquels elles sont envoyées peuvent être de natures très différentes. Voici quelques exemples d'usage: * Envoyer un mail via un serveur SMTP. * Envoyer un mail via une API REST (e.g: API Graph pour Office365). ====== Interface ====== {{:docs:admin:routeur:ui_routeur.png?400|}} //Liste des services disponibles lorsque l'on arrive sur le module routeur// ===== Arborescence ===== {{:docs:admin:routeur:ui_routeur_arbo_exemple.png?400|}} (1) Accès à la liste des services disponibles (2) Pour accéder à la description et au paramétrage du service (3) Accès à la liste de toutes les instances de connecteurs configurées. (4) Accès à la description de ce type de connecteur + la liste des instances configurée de ce type. (5) Formulaire de paramétrage d'une instance de connecteur. ====== Services ====== Concernant le vocabulaire qui sera utilisé: * On parle de service pour désigner les "types de services". * On parle d'instance de service pour désigner une instance de paramétrage basée sur ce type de service. Un service représente du côté EzGED une fonctionnalité ou un ensemble de fonctionnalités rendues par un service, un serveur ou une application externe. Certains services ne nécessitent pas obligatoirement de paramétrer une instance pour être utilisés. C'est le cas par exemple du service "Envoi de mail" qui à l'heure actuelle est paramétré à la demande pour chacune de ses utilisations comme par exemple: - Lorsque l'utilisateur effectue un envoi de mail via l'interface. - Lorsqu'un script tel que le "tblrouting" effectue des envois de mail. ===== Paramétrage ===== ==== Connecteur par défaut ==== Le connecteur par défaut sert à deux choses: * définir le connecteur à utiliser pour le service (donc en dehors d'une instance spécifique). * définir le connecteur à utiliser si l'instance de service ne précise par un connecteur spécifique. Prenons comme exemple le service "Envoi de mail": Vous pouvez associer au service "Envoi de mail" comme connecteur par défaut une instance du connecteur "SMTP". Cela signifie que partout où EzGED fait de l'envoi de mail sans référencer une instance spécifique de ce service alors le connecteur SMTP (une instance de ce connecteur) sera utilisé. Mais si vous avez programmé une instance du service d'envoi de mail vous pouvez décider que pour cette instance vous voulez que les mails soient envoyés via Office365. Dans ce cas vous allez choisir sur cette instance d'utiliser un autre connecteur que celui par défaut. ==== Ajouter une instance ==== Fonctionnalité à venir ==== Paramétrer une instance ==== Fonctionnalité à venir ===== Services disponibles ===== ==== Envoi de mail ==== Le service "Envoi de mail" est utilisé pour permettre à EzGED d'envoyer des mails. Dans son implémentation actuelle il sert exclusivement à lier un connecteur compatible avec la fonctionnalité d'envoi de mail qui est par exemple utilisée lorsque: * Un utilisateur effectue un envoi de mail * Un script comme le tblrouting est exécuté ====== Connecteurs ====== Un connecteur implémente la logique permettant de se "connecter" et de communiquer avec un serveur, une application ou une API tierce. ===== Ajouter une instance ===== Lorsque vous arrivez sur le module routeur et qu'aucune instance de connecteur n'est configurée vous voyez ceci: {{:docs:admin:routeur:routeur:ui_routeur_arbo_init.png?400|}} Pour ajouter une nouvelle instance vous pouvez le faire soit: * depuis la liste de toutes les instances (élément (3) dans [[#arborescence|l'arbo d'exemple]] ) * depuis un type de connecteur spécifique (élément (4) dans [[#arborescence|l'arbo d'exemple]]) ===== Paramétrer une instance ===== Il suffit de cliquer dans l'arborescence sur l'élément correspond à l'instance à configurer. Par exemple sur l'élément (5) dans [[#arborescence|l'arbo d'exemple]] Concernant le paramétrage, chaque connecteur étant différent, se référer à la documentation propre à chaque connecteur ci-dessous. ===== Connecteurs disponibles ===== ==== SMTP ==== Services compatibles: [[#Envoi de mail]] Description: un connecteur qui utilise le protocole SMTP pour envoyer un mail ^ Paramètre ^ Description ^ Exemple ^ | Adresse | Adresse du serveur smtp | smtp.mondaine.fr | | Port | Port d'écoute | 465, 25 | | SSL/TLS | Active ou non TLS (utilisation de smtp ou smtps) | | | StartTLS | Activer StartTLS | Pour les serveur exchange généralement | | Compte | Login pour s'authentifier | | | Mot de passe | Mot de passe pour s'authentifier | | | Expéditeur | Adresse de l'expéditeur | admin@mondaine.fr | ==== Office365 ==== **Services compatibles**: [[#Envoi de mail]] **Description**: un connecteur qui utilise l'API Graph Microsoft pour envoyer un mail via Office365. Le paramétrage d'un connecteur Office365 consiste à lui associer un compte Office365 pour lequel on obtiendra autorisation d'émettre des mails. **Procédure de paramétrage:** - Première étape, on clique sur "Associer un compte".\\ {{:docs:admin:routeur:connecteur_office365_form_01.png?400|}} - Une fenêtre s'ouvre pour débuter la demande d'autorisation. Elle fournit un code et un lien sur lequel il faut cliquer. Ce lien amène vers une page de Microsoft. \\ {{:docs:admin:routeur:connecteur_office365_auth_01.png?400|}} - Sur la page un premier formulaire nous invite à saisir le code.\\ {{:docs:admin:routeur:connecteur_office365_auth_02.png?400|}} - On sélectionne ensuite le compte Office365 pour lequel on va autoriser EzGED à envoyer des mails. Si le compte n'est pas listé on l'ajoute et on s'y connecte\\ {{:docs:admin:routeur:connecteur_office365_auth_03.png?400|}} - Une fois authentifié une fenêtre présente la demande d'autorisation et nous invite à confirmer en nous présentant les actions que nous allons autoriser\\ {{:docs:admin:routeur:connecteur_office365_auth_04.png?400|}} - Si accepté un écran nous confirme que la demande d'autorisation est terminée\\ {{:docs:admin:routeur:connecteur_office365_auth_05.png?400|}} - On peut retourner sur EzGED où l'on doit nous confirmer que la demande d'autorisation a bien réussie.\\ {{:docs:admin:routeur:connecteur_office365_auth_06.png?400|}}