Domotech esp8266 api

De mydil
Aller à la navigation Aller à la recherche

Commandes

Déclaration de cette API dans le fichier ApiCommandServer.cpp.

URL Corps Verbe Action Code retour Implémentée

/api/cmd/locate

  • vide

GET

Fait clignoter la led (D4) présente sur le module

  • 200
Implemented green tick.png

/api/cmd/reboot

  • vide

GET

Redémarre le module

  • 200
Implemented green tick.png

/api/cmd/disable

  • vide

GET

Désactive le module. Un module désactivé ne répondra plus à aucun ordre, notamment de modification de GPIO.

  • 200
Implemented green tick.png

/api/cmd/enable

  • vide

GET

Active le module.

  • 200
Implemented green tick.png

GPIO

Déclaration de cette API dans le fichier ApiGpioServer.cpp.

URL Corps Verbe Action Code retour Implémentée

/api/gpio

  • vide

GET

Affiche l'état des broches

  • 200 : { "gpios" : { "A0" : { "state" : 9, "time" : 0 } , "D0" : { "state" : 0, "time" : 0, "isr" : 0 } , "D1" : { "state" : 1, "time" : 0, "isr" : 0 } , "D2" : { "state" : 0, "time" : 0, "isr" : 0 } , "D3" : { "state" : 0, "time" : 0, "isr" : 0 } , "D4" : { "state" : 0, "time" : 0, "isr" : 0 } , "D5" : { "state" : 0, "time" : 0, "isr" : 0 } , "D6" : { "state" : 0, "time" : 0, "isr" : 0 } , "D7" : { "state" : 0, "time" : 0, "isr" : 0 } , "D8" : { "state" : 0, "time" : 0, "isr" : 0 } } }
Implemented green tick.png

/api/gpio/mode

  • gpio : broche à modifier (D0 - D7)
  • mode : mode de la broche, iINPUT et oOUTPUT

GET

Modifie le mode d'une broche

  • 200 : si les deux paramètres sont présents
Implemented green tick.png

/api/gpio/state

  • gpio : broche à modifier (D0 - D7)
  • state : état désiré de la broche, 1HIGH et 0LOW

GET

Récupère / modifie l'état d'une broche

  • 200 : si gpio est présent le retour correspondra au nouvel état de la broche → { "state" : 1 }
  • 400 : si gpio n'est pas présent
Implemented green tick.png

/api/gpio/pwm

  • gpio : broche à modifier (D0 - D7)
  • pwm : état PWM désiré de la broche (0 - 1024)

GET

Récupère / modifie l'état d'une broche

  • 200 : si gpio est présent le retour correspondra au nouvel état de la broche → { "state" : 650 }
  • 400 : si gpio n'est pas présent
Implemented green tick.png

/api/gpio/toggle

  • gpio : broche à modifier (D0 - D7)

GET

Permet de basculer l'état d'une broche

  • 200 : si gpio est présent le retour correspondra au nouvel état de la broche → { "state" : 1 }
  • 400 : si gpio n'est pas présent
Implemented green tick.png

/api/gpio/time

  • gpio : broche à modifier (D0 - D7)
  • time : durée de changement d'état de la broche (0 - 65535)

GET

Permet de basculer l'état d'une broche pendant un certain nombre de secondes

  • 200 : si gpio est présent sans time → { "D1" : { "time" : 0 } }
  • 200 : si le paramètre time est présent le retour correspondra au nouvel état de la broche → { "state" : 1 }
  • 400 : si gpio n'est pas présent
Implemented green tick.png

/api/gpio/isr

  • gpio : broche à modifier (D0 - D7)
  • isr : le type d'interruption
    • 0 → pas d'ISR
    • 1 → CHANGE
    • 2 → RISING
    • 3 → FALLING

GET

Attache une interruption sur une broche

  • 200 : si le paramètre gpio est présent avec isr → { "D1" : { "isr" : 0 } }
  • 400 : si l'un des deux paramètres est manquant
Implemented green tick.png

/api/gpio/serial

  • start : démarre la lecture sur le port série (300 - 115200)
  • stop : arrête la lecture sur le port série
  • send : envoie un message sur le port série

GET

Démarre / stop la lecture sur le port série ou envoie / retourne les données dans le tampon du port série (UART)

  • 200 : si le paramètre start est présent, il correspond à la vitesse du port série
  • 200 : si le paramètre stop est présent, cela stoppera la lecture
  • 200 : si le paramètre send est présent, cela enverra les données sur le port série
  • 200 : si aucun paramètre n'est présent, cela retournera le contenu du tampon
Implemented green tick.png

Température

Déclaration de cette API dans le fichier ApiTempServer.cpp.

URL Corps Verbe Action Code retour Implémentée

/api/temp

  • vide

GET

Affiche les températures de tous les thermomètres ou false si aucun thermomètre n'est présent

  • 200 : { "temperatures" : [ 25.325, 38.152 ] }
Implemented green tick.png

/api/temp/res

  • id : le numéro du thermomètre
  • res : la résolution voulue

GET

Affiche la résolution si le paramètre res est absent

Configure la résolution si le paramètre res est présent

  • 200 : si l'identifiant est valide
  • 404 : si l'identifiant n'est pas valide
Implemented green tick.png

/api/temp/addr

  • vide

GET

Affiche les adresses des thermomètres

  • 200
Implemented green tick.png

Configuration

Déclaration de cette API dans le fichier ApiConfigServer.cpp.

URL Corps Verbe Action Code retour Implémentée

/api/conf

  • vide

GET

Permet d'afficher la configuration

  • 200 :

Api config retrieval example.png

Implemented green tick.png

/api/conf/apply

  • vide

GET

Permet d'appliquer une configuration (redémarre simplement le module)

  • 200
Implemented green tick.png

/api/conf/save

  • hostname : nom du module
  • wifimode :
    • 1 → station mode
    • 2 → AP mode
    • 3 → AP_STA (both)
  • sta_ssid : SSID of the AP to connect to (wifimode must be 1 or 3)
  • sta_pwd : password of the AP to connect to (wifimode must be 1 or 3)
  • ap_ssid : AP SSID (wifimode must be 2 or 3)
  • ap_pwd : AP password (wifimode must be 2 or 3)
  • ap_pwr : AP output power (wifimode must be 1 or 3)
  • ipconfig : ip configuration, 0 for DHCP, 1 for static
  • ipaddr : ip address (ipconfig must be 1)
  • netmask : ip netmask (ipconfig must be 1)
  • gateway : ip gateway (ipconfig must be 1)
  • dns : ip dns (ipconfig must be 1)
  • to_apply : will apply configuration by rebooting the device
  • disabled : if 1 disable the module otherwise module is active with 0
  • is_temp : if 1 temperature sensor will be active, otherwise 0 to disable
  • temp_pin : GPIO to look
  • isr
  • is_serial
  • start

GET

Permet de modifier la configuration du module

  • 200
Implemented green tick.png

/api/conf/reset

  • vide

GET

Efface la configuration et redémarre le module

  • 200
Implemented green tick.png

Firmware

Déclaration de cette API dans le fichier ApiUpdateServer.cpp.

URL Corps Verbe Action Code retour Implémentée

/api/firmware/update

  • server: l'adresse IP du serveur
  • name: le nom du firmware

GET

Met à jour le micrologiciel du module avec le fichier présent à http://ip_du_serveur/nom_du_firmware

  • 200 :
Implemented green tick.png

/api/firmware/info

  • vide

GET

Affiche des informations sur la mise à jour. En cas de mise à jour réussie, comme le module redémarre automatiquement, l'état n'est pas cohérent (affiche une erreur)

  • 200 : si l'identifiant est valide
Implemented green tick.png