Skip to content
This repository has been archived by the owner on Sep 3, 2020. It is now read-only.

Structure de l'API

Alexandre-Xavier Labonté-Lamoureux edited this page Mar 5, 2019 · 3 revisions

Description sommaire

L'API sert des données via HTTP et communique au ESP via MQTT pour actualiser les valeurs des sensors dans la base de données + envoie les commandes reçues au ESP. (Voir Connectivité entre ESP et API (MQTT))

Structure de l'API

/buckets

Ce endpoint représente une collection de buckets. On peut obtenir la liste complète des éléments de la collection où en ajouter un nouveau.

HTTP Methods Description Structure de données attendue/envoyée
GET Renvoie la liste des buckets ARRAY --> {id:INT, name:STRING, ip:STRING}
PUT Pas implémenté
POST Création d'un nouveau bucket {name:STRING, ip:STRING}
DELETE Pas implémenté

/buckets/{bucket_id}

Ce endpoint représente un seul bucket. Un bucket est une collection de sensors. On peut obtenir la liste des sensors, ajouter un nouveau sensor à la collection et supprimer la collection (le bucket).

HTTP Methods Description Structure de données attendue/envoyée
GET Renvoie la liste des sensors ARRAY --> {id:INT, bucket_id:INT, name:STRING, type:STRING}
PUT Pas implémenté
POST Création d'un nouveau sensor {name:STRING, type:STRING}
DELETE Suprression du bucket {bucket_id}

/buckets/{bucket_id}/{sensor_id}

Ce endpoint représente un seul sensor. Un sensor n'est pas une collection de valeurs. On peut obtenir une représentation de l'élément (sous forme d'une liste de valeurs) et on peut supprimer un élément (un sensor)

HTTP Methods Description Structure de données attendue/envoyée
GET Renvoie la liste des valeurs reçues de {sensor_id} ARRAY --> {id:INT, sensor_id:INT, value:STRING, timestamp:INT}
PUT Pas implémenté
POST Pas implémenté
DELETE Suppression du sensor

/control/{bucket_id}

Ce endpoint reçoit des commandes via POST selon les critères spécifiés ici. N'accepte que la méthode POST

HTTP Methods Description Structure de données attendue/envoyée
GET Pas implémenté
PUT Pas implémenté
POST Pas implémenté {blue:INT, white:INT, red:INT, fan:INT}
DELETE Pas implémenté

API back-end

jardiniot_explanations