- La documentation complète de l'API Web est disponible à l'adresse : webapi.egauge.net
- Bien que la dernière version du firmware soit recommandée, les éléments nécessitant une version minimale du firmware seront signalés.
L'API Web eGauge est un framework API basé sur JSON qui permet la configuration automatisée des compteurs, la récupération des données enregistrées, les informations d'état, et bien plus encore.
eGauge Systems fournit une bibliothèque Python pour faciliter l'authentification et d'autres interactions avec l'API Web du compteur eGauge et peut être installée à partir de PyPi (pip) ou Bitbucket (code source).
Remarques :
- L'API Web a été introduite dans la version 4.2 du firmware. Toutefois, eGauge Systems publie régulièrement de nouvelles versions intégrant des correctifs, des améliorations et de nouvelles fonctionnalités pour l'API Web. Il est recommandé d'utiliser la dernière version du firmware eGauge. Cliquez ici pour obtenir des informations sur la vérification et la mise à jour du firmware de votre compteur eGauge.
Premiers pas avec Python
Pour faciliter la prise en main, eGauge propose un package Python open source. Il peut être installé avec la commande :
pip install egauge-python
Une fois ce paquet installé, accéder à un compteur eGauge devient très simple. Par exemple, pour récupérer le nom d'hôte du compteur, vous pouvez utiliser :
from egauge import webapi
URI = "https://DEV.egaug.es" # replace DEV with meter name
USR = "USER" # replace USER with user name
PWD = "PASS" # replace PASS with password
dev = webapi.device.Device(URI, webapi.JWTAuth(USR,PWD))
print("hostname is " + dev.get("/config/net/hostname")["result"]) Le package contient également diverses classes pratiques pour lire les données des compteurs, capturer des échantillons de formes d'onde, convertir entre unités physiques, etc.
Le dépôt Git officiel de ce package se trouve à l' adresse https://bitbucket.org/egauge/python/ . Divers exemples de code sont disponibles dans le répertoire eGauge/examples.
Démarrage sans la bibliothèque Python eGauge
Consultez la page de la bibliothèque de support sur l'authentification WebAPI pour obtenir des exemples d'authentification.
Descriptions courantes des services WebAPI
Consultez la documentation de l'API Web pour obtenir tous les détails et la liste complète des points de terminaison de service disponibles. Les points de terminaison ci-dessous ne représentent que quelques exemples parmi les plus fréquemment utilisés pour récupérer des données et la configuration.
/auth
Service utilisé pour obtenir ou invalider un jeton Web JSON utilisé pour l'authentification auprès de l'API Web.
/config
Ce service vous permet de lire et d'écrire la configuration du compteur.
/register
Ce service fournit des données de registre instantanées et historiques enregistrées sur le compteur.
/local
Ce service fournit des informations instantanées dérivées des entrées de canal configurées, notamment la valeur RMS, la valeur moyenne, la valeur de fréquence et les valeurs instantanées de puissance et d'énergie si les registres de puissance sont configurés.
Pour les données de registre historiques ou nouvellement générées, utilisez le service /register .
Autres descriptions de services WebAPI
Vous trouverez ci-dessous les points de terminaison de service supplémentaires non mentionnés ci-dessus. Consultez la documentation de l'API Web pour obtenir tous les détails et la liste complète des points de terminaison de service disponibles.
/capture
Le service /capture permet d'acquérir les données brutes de forme d'onde des entrées. Pour obtenir directement les valeurs RMS, la moyenne ou la fréquence des capteurs, utilisez le service /local. Pour obtenir les données de registre enregistrées ou nouvellement générées, utilisez le service /register.
/cmd
Service utilisé pour envoyer des commandes au compteur, telles que le redémarrage ou la mise à jour du micrologiciel.
/ctid
Service utilisé pour lire ou configurer les capteurs CTid à partir d'un compteur ou faire clignoter la LED sur le capteur (EG4xxx uniquement).
/ctrl
Service utilisé pour contrôler les appareils distants pris en charge, tels que le module relais PRM3.
/log
Service permettant d'accéder aux journaux système (syslog) ou aux journaux du noyau. Syslog doit être activé au préalable via le point de terminaison de service /config.
/lua
Service utilisé pour gérer les scripts Lua sur le compteur.
/providers
Service utilisé pour obtenir des informations sur les fournisseurs tiers qui prennent en charge les services de comptage tels que le partage de données push, les alertes push et les tarifs.
/store
Service utilisé pour stocker et récupérer les préférences et autres paramètres généralement utilisés dans l'interface du navigateur web de l'utilisateur.
/remote
Service utilisé pour configurer les appareils distants sur le compteur.
/sys
Service utilisé pour obtenir des informations système telles que la version du firmware, la durée de fonctionnement, le numéro de série, le modèle du compteur, etc.