ENERGID met à disposition des développeurs et des utilisateurs une API complète afin de pouvoir piloter ENERGDI’Life depuis n’importe quel objet connecté.
Deux API sont disponibles : une orientée développeur qui se pilote en JSON RPC 2.0 et une autre via URL et requête HTTP.
Cette API s’utilise très facilement par de simples requêtes HTTP via URL.
Scénario #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=scenario&id=#ID#&action=#ACTION#
- id : correspond à l’id de votre scénario. L’ID se trouve sur la page du scénario concerné, dans “Outils” → “Scénarios”, une fois le scénario sélectionné, à côté du nom de l’onglet “Général”. Autre moyen de le retrouver : dans “Outils” → “Scénarios”, cliquez sur “Vue d’ensemble”.
- action : correspond à l’action que vous voulez appliquer. Les commandes disponibles sont : “start”, “stop”, “disable” et “enable” pour respectivement démarrer, arrêter, désactiver ou activer le scénario.
- tags [optionnel] : si l’action est “start”, vous pouvez passer des tags au scénario (voir la documentation sur les scénarios) sous la forme tags=toto%3D1%20tata%3D2 (à noter que %20 correspond à un espace et %3D à = ).
Info/Action commande #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=cmd&id=#ID#
- id : correspond à l’id de ce que vous voulez piloter ou duquel vous souhaitez recevoir des informations.
Le plus simple pour avoir cette URL est d’aller sur la commande et de cliquer sur configuration avancée (l’icône “engrenage”) et là, vous allez voir une URL qui contient déjà tout ce qu’il faut en fonction du type et du sous-type de la commande.
Interaction #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=interact&query=#QUERY#
- query : question à poser à ENERGID’Life.
- utf8 [optionnel] : indique à ENERGID’Life si il faut encoder query en utf8 avant de chercher à répondre.
- emptyReply [optionnel] : 0 pour que ENERGID’Life réponde même si il n’a pas compris, 1 sinon.
- profile [optionnel] : nom d’utilisateur de la personne déclenchant l’interaction.
- reply_cmd [optionnel] : ID de la commande à utiliser pour répondre à la demande.
Message #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=message&category=#CATEGORY#&message=#MESSAGE#
- category : catégorie du message à ajouter au centre de message.
- message : message en question, attention à bien penser à encoder le message (espace devient %20, = %3D…). Vous pouvez utiliser un outil, ici.
Objet #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=object
Renvoie en json la liste de tous les objets de ENERGID’Life.
Equipement #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=eqLogic&object_id=#OBJECT_ID#
- object_id : ID de l’objet dont on veut récupérer les équipements.
Commande #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=command&eqLogic_id=#EQLOGIC_ID#
- eqLogic_id : ID de l’équipement dont on veut récupérer les commandes.
Full Data #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=fullData
Renvoie tous les objets, équipements, commandes (et leur valeur si ce sont des infos) en json.
Variable #
Voici l’URL = http://#IP_ENERGIDLIFE#/core/api/jeeApi.php?apikey=#APIKEY#&type=variable&name=#NAME#&value=VALUE
- name : nom de la variable dont on veut la valeur (lecture de la valeur).
- value [optionnel] : si “value” est précisé alors la variable prendra cette valeur (écriture d’une valeur).