Webhook Messages
Familiarisez-vous avec le format des messages et les charges utiles des différentes rubriques webhook.
Message Format
Chaque sujet de webhook peut avoir un format légèrement différent.
La plupart des webhooks ont la structure suivante où les event_details
sont la charge utile de events,
comme suit :
{ "topic": "webhook-topic", "events": [ {"EVENT DETAILS": "...."}, {"EVENT DETAILS": "....", ... ] }
Structure de la charge utile
Tous les messages webhook sont au format JSON (JavaScript Object Notation) et incluent les informations suivantes dans l’en-tête, qui décrit la configuration du message lui-même. Les informations d’en-tête s’affichent avant la charge utile dans le message. Si vous configurez un en-tête personnalisé dans la configuration du webhook, il apparaît également ici.
POST /uri/... HTTP/1.1 Host: hooks.abc.com:443 User-Agent: Mist-webhook Content-Type: application/json Content-Length: 382 X-Mist-Signature: ce3af7760f1289d02bf6a7ad19f3xxxxxxxxxx
Exemples de charges utiles d’infrastructure
Pour obtenir la liste complète des exemples de Webhooks, consultez Exemples de Webhooks d’API. Cela vous montrera des exemples de messages webhook envoyés par le Mist Cloud pour chacun des sujets webhooks donnés.
Voici quelques-uns des exemples de webhooks, en commençant par les webhooks d’infrastructure.
- Alerte
- Audit
- Jonction client
- Client Sessions
- Événements de l’appareil
- Updowns de l’appareil
- Autorisation de l’invité
- Événements Juniper Mist Edge
Alerte
Cet exemple d’alerte (alarme) affiche un point d’accès non autorisé détecté, le nombre (nombre de fois que Juniper Mist l’ai détecté), ainsi que le point d’accès et l’identificateur de l’ensemble de services de base (BSSID) qui l’ont détecté.
{ "topic": "alarms", "events": [ { "aps": [ "5c5b35xxxxxx" ], "bssids": [ "00024axxxxxx", "5c5b3xxxxxx", "000f2xxxxxx", "c03f0exxxxxx", "e091f5xxxxxx", "e894f6xxxxxx", "40169fxxxxxx", "40169fxxxxxx", "c03f0exxxxxx", "5c5b35xxxxxx" ], "count": 16, "id": "95193bda-1fef-4ea6-xxxx-xxxxxxxxxxxx", "last_seen": 1549068720, "ssids": [ "qwerty", "A-Dot", "xfinity", "alpha" ], "timestamp": 1549068202, "type": "rogue-ap-detected", "update": true, "org_id": "2818e386-8dec-2562-xxxx-xxxxxxxxxxxx", "site_id": "4ac1dcf4-9d8b-7211-xxxx-xxxxxxxxxxxx" } ] }
Audit
Cet exemple est une alerte d’audit indiquant que John Doe a mis à jour un appareil. Il indique l’organisation (org_id) et le site (site_id) auquel appartient l’appareil.
{ "topic": "audits", "events": [ { "admin_name": "john doe john.doe@juniper.net", "device_id": "00000000-0000-0000-1000-5c5b35xxxxxx", "id": "8e00dd48-b918-4d9b-xxxx-xxxxxxxxxxxx", "message": "Update Device \"Reception\"", "org_id": "2818e386-8dec-2562-xxxx-xxxxxxxxxxx", "site_id": "4ac1dcf4-9d8b-7211-xxxx-xxxxxxxxxxxx", "src_ip": "xx.xx.xx.xx", "timestamp": 1549047906.201053 } ] }
Jonction client
Ce message de jonction client affiche l’adresse MAC du client qui s’est joint. Il affiche également les détails de connexion associés dès qu’un client rejoint un réseau sans fil.
{ "topic": "client-join", "events": [ { "ap": “5c5b35d0xxxx", "ap_name": “AP43 Test", "band": "5", "bssid": "5c5b35dfxxxx", "connect": 1592333828, "connect_float": 1592333828.324, "mac": "70ef0071xxxx", "org_id": "6748cfa6-4e12-11e6-xxxx-xxxxxxxxxxx", "rssi": -54, "site_id": "d761985e-49b1-4506-xxxx-xxxxxxxxxxx", "site_name": "Test", "ssid": "Mist", "timestamp": 1592333828, "version": 2 "wlan_id": "6c0c0b07-0d77-44d1-xxxx-xxxxxxxxxxxx", } ] }
Client Sessions
La charge utile sessions client affiche des informations détaillées sur l’ensemble de la session, d’un client à un seul point d’accès.
{ "topic": "client-sessions", "events": [ { "ap": “5c5b352fxxxx", "ap_name": “AP43 Test", "band": "5", "bssid": "5c5b352bxxxx", "client_family": "iPhone", "client_manufacture": "Apple", "client_model": "8+", "client_os": "13.4.1", "connect": 1592333548, "connect_float": 1592333548.117, "disconnect": 1592333828, "disconnect_float": 1592333828.589, "duration": 279.835049793, "mac": "70ef00xxxxxx", "next_ap": "5c5b35d0xxxx", "org_id": "6748cfa6-4e12-11e6-xxxx-xxxxxxxxxxxx", "rssi": -87, "site_id": "d761985e-49b1-4506-xxxx-xxxxxxxxxxx", "site_name": "Test", "ssid": "Mist", "termination_reason": 3, "timestamp": 1592333828, "version": 2 "wlan_id": "6c0c0b07-0d77-44d1-xxxx-xxxxxxxxxxxx", } ] }
Événements de l’appareil
La charge utile device-events affiche des détails sur l’appareil qui rencontre l’événement avec la raison.
{ "topic": "device-events", "events": [ { "audit_id": "a8ec4d8a-4da6-4ead-xxxx-xxxxxxxxxxx", "ap": "5c5b35xxxxxx", "ap_name": "AP41 Near Lab", "device_name": "AP41 Near Lab", "device_type": "ap/switch/gateway", "ev_type": "NOTICE", "mac": "5c5b35xxxxxx", "org_id": "2818e386-8dec-2562-xxxx-xxxxxxxxxxxx", "reason": "power_cycle", "site_id": "4ac1dcf4-9d8b-7211-xxxx-xxxxxxxxxxxx", "site_name": "Site 1", "text": "event details", "timestamp": 1461220784, "type": "AP_RESTARTED" } ] }
Updowns de l’appareil
Le webhook device-updowns est un sous-ensemble du webhook device-events. Il n’envoie que les informations de base de l’appareil et la raison (type) pour laquelle il est tombé en panne.
{ "topic": "device-updowns", "events": [ { "org_id": "2818e386-8dec-2562-xxxx-xxxxxxxxxxxx", "site_id": "4ac1dcf4-9d8b-7211-xxxx-xxxxxxxxxxxx", "type": "AP_RESTARTED", "ap": "5c5b35xxxxxx", "ap_name": "AP01", "site_name": "Site1" "timestamp": 1461220784 } ] }
Autorisation de l’invité
Le webhook d’autorisation de l’invité fournit aux clients des données sur les clients invités lorsque ces derniers autorisent un WLAN.
{ "topic": "guest-authorizations", "events": [ { "ap":"5c5b350e55c8", "auth_method": "passphrase", "authorized_expiring_time":1677076639, "authorized_time":1677076519, "carrier": "docomo", "client": "ac2316eca70a", "company": "MIST", "email": ""abcd@abcd.com", "field1": "field1 value", "field2": "field2 value", "field3": "field3 value", "field4": "field4 value", "mobile": "+0123456789", "name": "Dr Strange", "org_id":"1688605f-916a-47a1-8c68-f19618300a08", "site_id":"ec3b5624-73f1-4ed3-b3fd-5ba3ee40368a", "sms_gateway": "Telstra", "sponsor_email": "sponsor@gmail.com", "ssid":"Portal Auth", "wlan_id":"7681be9a-044a-4622-90cf-3accde5ad853", } ] }
Événements Juniper Mist Edge
La charge utile webhook mxedge-events peut contenir des informations de base sur un événement se produisant sur un appareil Juniper Mist Edge individuel, similaire à device-events.
{ "topic": "mxedge-events", "events": [ { "audit_id": "03a65fa8-f74b-4c82-xxxx-xxxxxxxxxxxx", "mxcluster_id": "27558fe2-a0e5-4236-xxxx-xxxxxxxxxxxx", "mxedge_id": "00000000-0000-0000-1000-xxxxxxxxxxxx", "mxedge_name": "ME1", "org_id": "dfb3a656-2a21-4ea5-xxxx-xxxxxxxxxxxx", "timestamp": "1692974834.308884", "type": "ME_CONFIG_CHANGED_BY_USER" } ] }
Exemples de charges utiles de localisation
Le groupe suivant est constitué par les webhooks Location, qui ne sont disponibles que pour les sites (et non pour les organisations).
- Coordonnées de localisation
- Alertes d’occupation
- RSSI Zone
- Données d’analyse du client SDK
- Événement d’entrée et de sortie de la balise virtuelle
- Événements d’entrée et de sortie de zone
Coordonnées de localisation
La charge utile du webhook emplacement met en corrélation les informations du client avec un emplacement sur une carte (plan d’étage) téléchargée sur Juniper Mist. Une carte à l’échelle précise et l’utilisation du client SDK sont des exigences pour ce webhook.
{ "topic": "location", "events": [ { "site_id": "4ac1dcf4-9d8b-7211-xxxx-xxxxxxxxxxxx", "map_id": "845a23bf-bed9-e43c-xxxx-xxxxxxxxxxxx", "x": 13.5, "y": 3.2, "timestamp": 1461220784, // for SDK client "type": "sdk", "id": "de87bf9d-183f-e383-xxxx-xxxxxxxxxxxx", "name": "optional", // for WIFI "type": "wifi", "mac": "5684daxxxxxx", // Optional for wifi "wifi_beacon_extended_info": [ {"frame_ctrl": 776, "seq_ctrl": 772, "payload": "............"}, ] // for ASSET "type": "asset", "mac": "7fc293xxxxxx", "ibeacon_uuid": "f3f17139-704a-f03a-xxxx-xxxxxxxxxxxx", "ibeacon_major": 13, "ibeacon_minor": 138, "eddystone_uid_namespace": "2818e3868decxxxxxxxx", "eddystone_uid_instance": "5c5b35xxxxxx", "eddystone_url_url": "https://www.abc.com", "mfg_company_id": 935, "mfg_data": "648520a1020000", "battery_voltage": 3370 } ] }
Alertes d’occupation
Le webhook d’alertes d’occupation affiche des informations sur des zones spécifiques si elles dépassent la occupancy_limit configurée.
{ "topic": "occupancy-alerts", "events": [ { "alert_events": [ { "current_occupancy": 10, "map_id": "f5d26c7f-1670-4921-xxxx-xxxxxxxxxxxx", "occupancy_limit": 5, "org_id": "6748cfa6-4e12-11e6-xxxx-xxxxxxxxxxxx", "timestamp": 1594861457, "type": "COMPLIANCE-VIOLATION", "zone_id": "b83312a7-7269-4ae1-xxxx-xxxxxxxxxxxx", "zone_name": "PLM and Leadership" }, { "current_occupancy": 20, "map_id": "f5d26c7f-1670-4921-xxxx-xxxxxxxxxxxx", "occupancy_limit": 10, "org_id": "6748cfa6-4e12-11e6-xxxx-xxxxxxxxxxxx", "timestamp": 1594861457, "type": "COMPLIANCE-VIOLATION", "zone_id": "80acf542-e863-43cf-xxxx-xxxxxxxxxxxx", "zone_name": "CSQA" }, { "current_occupancy": 9, "map_id": "f5d26c7f-1670-4921-xxxx-xxxxxxxxxxxx", "occupancy_limit": 4, "org_id": "6748cfa6-4e12-11e6-xxxx-xxxxxxxxxxxx", "timestamp": 1594861457, "type": "COMPLIANCE-VIOLATION", "zone_id": "a4c7a7c2-880e-4a0e-xxxx-xxxxxxxxxxxx", "zone_name": "Marketing & Sales Ops" } ], "site_id": "67970e46-4e12-11e6-xxxx-xxxxxxxxxxxx", "site_name": "MIST OFFICE" } ] }
RSSI Zone
La charge utile webhook rssizone affiche les appareils qui ont dépassé un seuil RSSI minimum configuré sur un site.
{ "topic":"rssizone", "events":[ { "mac":"500291xxxxxx", "map_id":"f5d26c7f-1670-4921-xxxx-xxxxxxxxxxxx", "rssizone_id":"e38f8e76-40db-4144-xxxx-xxxxxxxxxxxx", "site_id":"f5fcbee5-fbca-45b3-xxxx-xxxxxxxxxxxx", "timestamp":1694158990.986472, "trigger":"enter", "type":"wifi" } ] }
Données d’analyse du client SDK
La charge utile Webhook Données d’analyse du client SDK affiche des données spécifiques sur un client qui ne sont pas disponibles sans installer une application (à l’aide du SDK) sur le client lui-même.
{ "events": [ { "connection_ap": "5c5b35xxxxxx", "connection_band": "2.4", "connection_bssid": "5c5b35xxxxxx", "connection_channel": 11, "connection_rssi": -87, "last_seen": 1592333828, "mac": "70ef00xxxxxx", "scan_data": [ { "ap": "5c5b35xxxxxx", "band": "2.4", "bssid": "5c5b35xxxxxx", "channel": 11, "rssi": -87, "ssid": "mist-wifi", "timestamp": 1592333828 }, { "ap": "5c5b35xxxxxx", "band": "5", "bssid": "5c5b35xxxxxx", "channel": 36, "rssi": -75, "ssid": "mist-wifi", "timestamp": 1592333828 } ], "site_id": "d761985e-49b1-4506-xxxx-xxxxxxxxxxxx" } ], "topic": "sdkclient-scan-data" }
Événement d’entrée et de sortie de la balise virtuelle
Le webhook vbeacon est déclenché lorsqu’un appareil mobile exécutant le SDK Juniper Mist entre ou sort de la zone définie par une balise virtuelle.
{ "topic":"vbeacon", "events":[ { "mac":"10521cxxxxxx", "map_id":"5a8b84e6-cc7b-xxxx-xxxxxxxxxxxx", "site_id":"f5fcbee5-fbca-45b3-xxxx-xxxxxxxxxxxx", "timestamp":1694166602.662786, "trigger":"enter", "type":"wifi", "vbeacon_id":"ca301fd7-07af-4d42-xxxx-xxxxxxxxxxxx" } ] }
Événements d’entrée et de sortie de zone
Le webhook de zone est déclenché lorsqu’un appareil entre ou sort d’une zone définie.
{ "topic":"zone", "events":[ { "mac":"10521cxxxxxx", "map_id":"5a8b84e6-cc7b-xxxx-xxxxxxxxxxxx", "site_id":"f5fcbee5-fbca-45b3-xxxx-xxxxxxxxxxxx", "timestamp":1694166602.662786, "trigger":"exit", "type":"wifi", "zone_id":"b83312a7-7269-4ae1-xxxx-xxxxxxxxxxxx " } ] }