Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

 La La majorité des services en ligne, et désormais des équipements, proposent désormais leurs données sous forme d'API. La GTB ayant un rôle fédérateur, il est souvent très intéressant d’agréger ces données proposées pour les coupler aux données terrains : 

  • Compteurs sans-fils Sigfox
  • Pics de consommation PP1 et PP2 de RTE
  • Qualité de l'air de via BreezoMeter
  • Météo de DarkSkyVentilo-convecteurs de Distechvia DarkSky
  • Même des automates d'unités terminales peuvent présenter des API Web désormais.
  • etc.

Qu'est-ce qu'une API ?  

Une API (Interface de Programmation Applicative) est entre autre un ensemble normalisé de fonctions qui sert de façade par laquelle un logiciel offre des services à d'autres logiciels. Il existe des API logicielle logicielles (Niagara dispose de nombreuses API) et des API Web (RTE, Sigfox etc.) aussi appelées WebServiceWebServices. Les APIs sont le plus souvent accompagnées d'une description qui spécifie comment utiliser ces fonctions.

Les API Web permettent aujourd'hui de facilement échanger des informations entre applications et afin de fournir un meilleur servicede nouveaux services.

 

Pourquoi le RestNetwork ?

Le contenu des APIs n'étant pas standardisé, il était indispensable jusqu'à maintenant d'avoir recours à un développement spécifique pour communiquer avec chaque API. Il fallait interpréter "en dur" les données reçues de ces APIs pour les transformer dans Niagara de manière utilisable (points, historiques, programmes horaires etc.). Même l'interprétation des données transmises par des capteurs Sigfox est différente selon le constructeur et nécessitait pour chacun d'entre eux un développement spécifique.

C'est pour démocratiser simplifier l'accès aux APIs dans Niagara que nous avons lancé lançons le driver RestNetwork, disponible uniquement en lecture aujourd'hui. Il permet de transformer des informations d'une API:

  • De se connecter à quasiment n'importe quelle API,
  • D'utiliser les fonctions des API (via des requêtes)
  • De transformer les informations reçuesquelque soit le contenu au format JSON, en équipements et points dans Niagara.

Il permet de gérer l'interprétation des données de manière dynamique à l'aide de d'une programmation par blocs d'objet des de conversion pour transformer le contenu au format JSON en valeur ou en état.

 

Le Driver a été conçu de manière très dynamique permettant facilement de récupérer des facilement des données d'une API pour accéder à une autre et de convertir tout type de données dans le du JSON en valeur.

 

Si un cas n'a pas été géré, ou nous n'avons pas prévu une authentification particulière, il est très facile d'enrichir le driver et de développer uniquement le morceau manquant.

Documentation

Toute la documentation du RestNetwork est disponible ici ou en faisant un clic droit sur les composants du module dans le Workbench. Nous en avons profité pour faire une documentation générale sur le protocole HTTP et les API Web disponible ici.

...

Nous avons intégré directement dans le module des exemples d'utilisation du module avec des services comme RTE, la RATP, Sigfox et (avec notamment un exemple de conversion des équipements Adeunis), Darksky Weather et BreezoMeter. Tous ces exemples sont fonctionnels et vous permettrons de vous faire la main.

...

Le driver est téléchargeable ici. Il est disponible gratuitement pour l'instant en betabêta. La licence est décomposée par pack de points (5, 10, 100, illimité).

...