Bonjour,
j'ai un soucis sur une requete http en arduino. J'interroge un shelly em (qui peut me renovyer en json la puissance en W d'un element de ma maison.
Je peux aussi allumer ou eteindre un relais.
Pour cela : http://192.168.1.73/relay/0/?turn=on
Pour la puissance : http://192.168.1.73/emeter/0 (donne un json : {"power":0.00,"reactive":0.00,"pf":0.00,"voltage":237.18,"is_valid":true,"total":1071872.3,"total_returned":4116.2}
)
Pour la puissance ça fonctionne bien.
Mais pour le relais j'ai un retour de http.GET() à -2 ??? je ne savais meme pas que c'était possible.
Voici mon bout de code pour allumer le relais :
Code :
- void Switch_Shelly_Relais_ON()
- {String baseurl;
- int httpcode;
- baseurl="http://"+config.IP_SHELLY_2+"/relay/"+config.emeter_shelly2+"/?turn=on";
- http.begin(baseurl);
- Serial.println("baseurl : "+baseurl);
- int httpresponscode=http.GET();
- String payload = http.getString();
- Serial.println(String(httpresponscode));
- delay(500);
- http.end();
-
- }
|
Evidemment si je tape http://192.168.1.73/relay/0/?turn=on
directement dans firefox, le relais s'allume et j'obtiens : {"ison": true, "has_timer":false, "timer_started_at": 0, "timer_duration": 0.00, "timer_remaining": 0.00, "source": "http"}
(pour ma fonction, je me fiche de récupérer les elements json) je veux juste que ça commute le relais.
Merci pour votre aide.
PS : pour info voici le code de la fonction pour recuperer la puissance (celle là fonctionne).
Code :
- String GetConsoShelly()
- { String baseurl;
- String tempor;
- String StBearer;
- int httpcode;
- tempor="";
- baseurl="http://"+config.IP_SHELLY_1+"/emeter/"+config.emeter_shelly1;
- http.begin(baseurl);
- httpcode=http.GET();
- delay(200);
- if (httpcode==200) {
- DynamicJsonDocument doc(1024);
- String payload = http.getString();
- Serial.println(payload);
- deserializeJson(doc, payload);
- if (doc.containsKey("power" )) {tempor = doc["power"].as<String>();}
- return String(tempor);
- }
- else {return String("" );Serial.println(String(httpcode));}
- }
|
---------------
Matheux Fou - https://afficheur-tempo.fr - TEMPO BOX pour abonnés TEMPO EDF