API de monitoring externe
Objectif
Pour les intégrateurs qui ont besoin d'une visibilité en temps réel, l'interrogation de notre API de télémétrie entraîne des délais et une surcharge, tant du côté de l'intégrateur que du côté de SmartgridOne. Pour résoudre ce problème, le contrôleur peut être configuré pour envoyer la télémétrie à un endpoint désigné fourni par l'intégrateur. Ce « mécanisme de webhook » permet de diffuser des flux de données en direct avec une latence quasi nulle, en contournant les limites de l'interrogation traditionnelle d'une API.
Configuration initiale (point de départ pour les nouveaux utilisateurs)
1. Vérifiez votre réseau
Assurez-vous que votre SmartgridOne Controller dispose d'une connexion réseau active.
2. Ajoutez vos appareils
Connectez-vous à l'interface de mise en service et assurez-vous que les appareils sont ajoutés au SmartgridOne Controller.
3. Configurez le webhook via les « sources de données externes »



4. Saisissez les paramètres
-
L'URL et l'endpoint de l'API
-
Le jeton d'autorisation bearer utilisé pour la requête API. Pour éviter qu'un contrôleur compromis ne soit utilisé pour falsifier les données d'autres appareils, nous recommandons vivement d'utiliser des jetons uniques par contrôleur et d'associer chaque jeton à un emplacement spécifique dans votre implémentation.
-
La fréquence à laquelle les données sont envoyées (en secondes, la valeur par défaut est de 60 s)
-
Sélectionnez les données à envoyer :
- Les données au niveau de l'appareil contiennent tous les champs de données spécifiés ci-dessous, pour chaque nœud individuel connecté au SmartgridOne Controller.
- Le niveau du type d'appareil contient des données agrégées par type d'appareil (par ex. solaire, stockage, fixe)
Ensuite, sélectionnez l'option permettant d'inclure tous les appareils.

Données de l'endpoint
L'endpoint doit accepter une requête HTTP POST contenant les données suivantes :
Si le niveau du type d'appareil a été sélectionné :
{
"time": "<Unix Timestamp>",
"siteNodeId": "<Site NodeID>",
"grid": "<Grid Fields>",
"solar": "<Solar Fields>",
"storage": "<Storage Fields>",
"heat_pump": "<Heat Pump Fields>",
"switched_load": "<Switched Load Fields>",
"variable_power_load": "<Variable Power Load Fields>",
}Si le niveau de l'appareil a été sélectionné :
{
"time": "<Unix Timestamp>",
"siteNodeId": "<Site NodeID>",
"nodeId1": "<Node Fields>",
"nodeId2": "<Node Fields>",
...
}Vous trouverez plus d'informations sur les différents champs ici : Structure de la charge utile de feedback.
