Événements WEBHOOK
Si vous êtes un utilisateur des systèmes Automation et Event Engine, l'objet Événement Webhook vous permet de créer votre propre point terminal pour recevoir des charges utiles d'événements de capteurs ou systèmes externes. Une fois configuré, l'objet Webhook peut traiter n'importe quel message JSON reçu via HTTP. La fonctionnalité de l'objet événement Webhook facilite l'intégration des systèmes externes et vous évite de créer un collecteur spécifique.
Certains prérequis sont à prendre en compte avant d'utiliser l'événement Webhook, voir :
- Installation d'Analytics avec le moteur de règles. Voir : Installer Analytics
- Analytics Action Pack, Rule Pack et AWI Plug de Marketplace
Cette rubrique contient les sujets suivants :
Cas d'application de l'objet événement Webhook
Il peut être utilisé pour l'intégration de systèmes compatibles avec Webhooks. Après avoir configuré l'intégration de votre système, vous pourrez recevoir et traiter des événements avec les notifications en temps réel.
Systèmes pratiques où la notification d'événements en temps réel peut s'avérer avantageuse :
- systèmes de gestion de tickets : commandes clients, livraison, etc.
- outils de surveillance : alarmes, incidents et rappels
- systèmes CRM : nouvelles mises à jour des ventes et des informations clients
Les événements Webhook peuvent également être utilisés avec n'importe quelle application pouvant envoyer des messages JSON via HTTP. Vous pouvez créer vos propres capteurs et traiter les données dans un emplacement centralisé.
Présentation de l'objet événement Webhook
La présentation suivante décrit les libellés de l'interface utilisateur et le mode de fonctionnement de l'objet Webhook.
Pour obtenir un guide étape par étape, voir : Intégrer des événements Webhook à partir de systèmes externes
Informations du point de terminaison (chemin)
L'objet Webhook utilise l'agent IA (lorsqu'il est exécuté) pour écouter une URL spécifique, et réagir en temps réel aux charges utiles entrantes. La structure de l'URL est la suivante :
Adresse de l'agent IA Automation / + "analytics/api/" + version de l'API (actuellement"v1") + no. client /+no. unique
Le chemin se compose de :
- L'ID du client Automation Engine où l'objet a été créé
- Un numéro unique généré
Exemple
/analytics/api/v1/100/1003106
Remarques :
- Ce chemin ne peut pas être modifié
- Le chemin est unique pour chaque objet événement Webhook
Mappage avec la définition de l'événement
Définition de l'événement
La définition de l'événement est le bloc de construction de base du moteur d'événements. Il représente la structure de l'événement que le moteur d'événements utilise pour déclencher les règles, exécuter les workflows, etc. Une définition d'événement doit être sélectionnée à partir de l'interface utilisateur et appliquée à l'objet événement Webhook que vous avez configuré pour recevoir les données.
Les clés d'attributs de la définition d'événement doivent se baser sur l'anticipation de la charge utile d'événements à partir du système externe. Comme mentionné précédemment, vous devez avoir des connaissances préalables du schéma de messages JSON.
Le mappage est nécessaire, car la logique des règles du moteur d'événements ne fonctionne que sur les événements au format Définition de l'événement. Les règles se déclenchent après que la définition de l'événement ait été affectée au message reçu. La correspondance implique une connaissance du contenu de la charge utile d'événements entrants, ainsi que du schéma et de la syntaxe JSONPath. Le processus de mappage exige que vous transformiez les données reçues sous forme hiérarchisée, en une structure de liste normale dans la feuille Événement Webhook.
Remarque : Le mappage est détaillé dans Intégrer des événements Webhook à partir de systèmes externes
Il est également possible de mapper plusieurs types d'événements de systèmes externes, en utilisant la fonctionnalité Ajouter des associations. Cela vous permet d'enregistrer la même URL (point terminal) Webhook dans votre système externe pour plusieurs types d'événements.
Pour plus d'informations sur la définition de l'événement, voir : Objets VARA Événement IA
Important ! Avant tout, il vous faut connaître le schéma JSON de votre système externe, sinon le mappage des messages entrants peut s'avérer difficile et chronophage.
Filtrer les données reçues
Dès réception du message JSON, mappez les données avec les clés d'attributs de la définition d'événement que vous avez préalablement créée.
Le filtre consiste en un jeu de conditions qui seront évaluées dès réception de la charge utile d'événements. Si toutes les conditions sont remplies, le message est alors associé à la définition d'événement sélectionnée et traité par le moteur d'événements.
Chaque condition se compose de trois parties :
- L'expression du chemin JSON qui sélectionnera les données de la charge utile reçue
- L'opérateur qui sera appliqué aux données des étapes restantes
- La valeur texte fournie, qui sera comparée avec le résultat de l'expression du chemin JSON, via l'opérateur sélectionné à l'étape précédente
Remarque : Le message JSON peut avoir n'importe quel format.
Exécuter une règle
- Sélectionnez l'onglet Attributs dans l'objet événement règle.
- Sélectionnez l'agent IA dans la liste déroulante de l'agent, puis cliquez sur Enregistrer.
- Cliquez sur Exécuter pour exécuter la règle.
Remarque : Si vous annulez ou redéployez une règle, la mémoire du moteur d'événements sera purgée.
Sécuriser le point terminal Webhook
Le Webhook est exécuté sur l'agent IA et utilise la même configuration SSL. Si vous souhaitez utiliser différents certificats pour chaque objet Webhook, vous devez installer plusieurs agents IA et utiliser le certificat sur chaque agent.
Pour plus d'informations, voir : Sécuriser Backend.