API HTTP B02-BL/B05-BL
Le type d'appareil est diy_light(type=diy_light) et la version de l'interface API de l'appareil est 1 (apivers=1).
Obtenir des informations sur l'appareil
URL : http://[ip]:[port]/zeroconf/info
json
Méthode :
{
"deviceid": "1000000001",
"data": {}
}
Corps de la réponse
{
"seq": 2,
"error": 0,
"data": {
"switch": "off",
"startup": "off",
"pulse": "off",
"pulseWidth": 500,
"ssid": "eWeLink",
"otaUnlock": false,
"fwVersion": "3.5.0",
"deviceid": "100000140e",
"bssid": "ec:17:2f:3d:15:e",
"signalStrength": -25
}
}
Allumer et éteindre
URL : http://[ip]:[port]/zeroconf/switch
json
Méthode :
{
"deviceid": "1000000001",
"data": {
"switch": "on"
}
}
Attribut | Taper | Facultatif | Description |
---|---|---|---|
Chaîne | Non | allumé : allumer la lumière, éteint : |
Lumière à intensité variable
URL : http://[ip]:[port]/zeroconf/dimmable
json
Méthode :
{
//Change the light to cool & warm type
"deviceid": "1000xxxxxx",
"data":{
"ltype": "white",
"white": {"br": 70, "ct": 100}
}
}
//Change the light to RGBCW type
{
"deviceid": "1000xxxxxx",
"data":{
"ltype": "color",
"color": {"br": 100, "r": 255, "g": 0, "b": 0}
}
}
//Bright
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"bright",
"bright":{"r":255,"g":255,"b":255,"br":100}
}
}
//Sleep
{
"deviceid": "1000xxxxxx",
"data":{
"ltype": "goodNight",
"goodNight": {"r":255,"g":250,"b":125,"br":25}
}
}
//Read
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"read",
"read":{"r":255,"g":255,"b":255,"br":60}
}
}
//Night
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"nightLight",
"nightLight":{"r":255,"g":240,"b":225,"br":5}
}
}
// The following Scene can be modified options in the app
//Party
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"party",
"party":{"r":254,"g":132,"b":0,"br":45,"tf":1,"sp":1}
}
}
//Relax
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"leisure",
"leisure":{"r":0,"g":40,"b":254,"br":55,"tf":1,"sp":1}
}
}
//Soft
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"soft",
"soft":{"r":38,"g":254,"b":0,"br":20,"tf":1,"sp":1}
}
}
//Vivid
{
"deviceid": "1000xxxxxx",
"data":{
"ltype":"colorful",
"colorful":{"r":255,"g":0,"b":0,"br":100,"tf":1,"sp":1}
}
}
Attribut | Taper | Facultatif | Description |
---|---|---|---|
Chaîne | Non | Mode d'éclairage, incluant blanc, couleur, lumineux, bonne nuit, lecture, veilleuse, fête, loisirs, doux, coloré | |
blanc | Objet | Changer le type en froid et chaud | |
couleur | Objet | Changer le type en RGBCW | |
brillant | Objet | Changer la scène en « Lumineux » | |
bonne nuit | Objet | Changer la scène sur « Dormir » | |
lire | Objet | Changer la scène en « Lire » | |
veilleuse | Objet | Changer la scène en « Nuit » | |
faire la fête | Objet | Changer la scène en « Fête » | |
loisirs | Objet | Changez la scène pour « Détendez-vous » | |
doux | Objet | Changer la scène en « Doux » | |
coloré | Objet | Changer la scène en « Vif » | |
fr | Nombre | Non | Luminosité, [1 100] |
ct | Nombre | Non | Température de couleur, [0,100] |
r | Nombre | Non | Valeur rouge, [0,255] |
g | Nombre | Non | Valeur verte, [0,255] |
b | Nombre | Non | Valeur bleue, [0,255] |
tf | Nombre | Non | Mode de transformation des couleurs, [1,3]. 1 : Statique, 2 : Graduel, 3 : Scintillement |
sp | Nombre | Non |
Configuration du SSID et du mot de passe Wi-Fi
URL : http://[ip]:[port]/zeroconf/wifi
json
Méthode :
{
"deviceid": "",
"data": {
"ssid": "eWeLink",
"password": "WeLoveIoT"
}
}
Attribut | Taper | Facultatif | Description |
---|---|---|---|
Chaîne | Non | SSID du réseau WiFi auquel l'appareil se connectera | |
mot de passe | Chaîne | Non |
Force du signal Wi-Fi
URL : http://[ip]:[port]/zeroconf/signal_strength
json
Méthode :
{
"deviceid": "1000000001",
"data": {}
}
Corps de la réponse
{
"seq": 2,
"error": 0,
"data": {
"signalStrength": -67
}
}
Attribut | Taper | Facultatif | Description |
---|---|---|---|
Nombre | Non |
Déverrouillage de la fonction OTA
URL : http://[ip]:[port]/zeroconf/ota_unlock
json
Méthode :
{
"deviceid": "",
"data": {}
}
– 500 : L'opération a échoué et l'appareil présente des erreurs. Par exemple, l'ID de l'appareil ou la clé API n'est pas authentifiée par le service de déverrouillage OTA du fournisseur ;
– 503 :
Nouveau micrologiciel OTA
URL : http://[ip]:[port]/zeroconf/ota_flash
json
Méthode :
{
"deviceid": "",
"data": {
"downloadUrl": "http://192.168.1.184/ota/new_rom.bin",
"sha256sum": "3213b2c34cecbb3bb817030c7f025396b658634c0cf9c4435fc0b52ec9644667"
}
}
Attribut | Taper | Facultatif | Description |
---|---|---|---|
Chaîne | Non | L'adresse de téléchargement du nouveau firmware prend uniquement en charge le protocole HTTP, le serveur HTTP doit prendre en charge l'en-tête de requête Range. | |
somme sha256 | Chaîne | Non |
Les codes d’échec suivants sont ajoutés au champ d’erreur du corps de la réponse :
– 403 : L'opération a échoué et la fonction OTA n'a pas été déverrouillée. L'interface « 3.2.6 Déverrouillage de la fonction OTA » doit d'abord être appelée avec succès.
– 408 : L'opération a échoué et le délai de prétéléchargement du micrologiciel a expiré. Vous pouvez réessayer d'appeler cette interface après avoir optimisé l'environnement réseau ou augmenté la vitesse du réseau.
– 413 : L'opération a échoué et la taille du corps de la requête est trop importante. La taille du nouveau micrologiciel OTA dépasse la limite autorisée par l'appareil.
– 424 : L'opération a échoué et le téléchargement du micrologiciel a échoué. L'adresse URL est inaccessible (adresse IP inaccessible, protocole HTTP inaccessible, micrologiciel inexistant, serveur non compatible avec l'en-tête de requête Range, etc.).
– 471 : L'opération a échoué, ainsi que la vérification de l'intégrité du micrologiciel. La somme de contrôle SHA256 du nouveau micrologiciel téléchargé ne correspond pas à la valeur du champ sha256sum du corps de la requête. Le redémarrage de l'appareil entraînera un problème de blocage.
Note:
La taille maximale du firmware est de 508 Ko.
Le mode de lecture flash SPI doit être DOUT.