Aller au contenu
tibo789

Erreur 503 suite json Hc2:put du panneau arrosage

Recommended Posts

Bonjour @tibo789,

 

Tu peux ressayer cela stp ? Pour ma culture ;-)
 

local jsonTable = api.get("/api/panels/drenchers")
fibaro:debug("Lecture de json.rainDelay avant modification: " ..jsonTable.rainDelay.. " Cycles : " ..jsonTable.cycles)
fibaro:debug("Nom  187 : " ..jsonTable.drenchers[1].name)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour pépite, je suis encore à l'hosto je test des que j'ai retrouvé la forme ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonne convalescence, j'espère que ça s'est bien passé ;-) 

embete pas trop les infirmières ;-)

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour, je viens de tester ton code et : Capture.PNG.ef304ea4e58258e98500599552812213.PNG

je modifie en ajoutant la ligne decode :

local response = api.get("/api/panels/drenchers")
jsonTable = json.decode(response)
fibaro:debug("Lecture de json.rainDelay avant modification: " ..jsonTable.rainDelay.. " Cycles : " ..jsonTable.cycles)
fibaro:debug("Nom  187 : " ..jsonTable.drenchers[1].name)

et l'erreur devient Capture.PNG.8cb4a103bb6f63e32afee8a38b9665b9.PNG

 

Je remplace l'api:get :

HC2 = Net.FHttp("127.0.0.1",11111)
local response = HC2:GET("/api/panels/drenchers")
jsonTable = json.decode(response)
fibaro:debug("Lecture de json.rainDelay avant modification: " ..jsonTable.rainDelay.. " Cycles : " ..jsonTable.cycles)
fibaro:debug("Nom  187 : " ..jsonTable.drenchers[1].name)

et la nickel Capture.PNG.5757c514038aa0e9b5f3e8fda375b9e2.PNG

donc je continu en realisnat une modif:

HC2 = Net.FHttp("127.0.0.1",11111)
local response = HC2:GET("/api/panels/drenchers")
jsonTable = json.decode(response)
fibaro:debug("Lecture de json.rainDelay avant modification: " ..jsonTable.rainDelay.. " Cycles : " ..jsonTable.cycles)
fibaro:debug("Nom  187 : " ..jsonTable.drenchers[1].name.." Mode : "..jsonTable.drenchers[1].mode)
jsonTable.rainDelay=34
jsonTable.cycles=2
jsonTable.drenchers[1].mode="off"
fibaro:debug("Lecture de json.rainDelay apres modification :" ..jsonTable.rainDelay.. " Cycles : " ..jsonTable.cycles)
fibaro:debug("Nom  187 : " ..jsonTable.drenchers[1].name.." Mode : "..jsonTable.drenchers[1].mode)

et la de mieux en mieuxCapture.PNG.0c53869fd5a048f0ae4cefe3d357b4b5.PNG

donc je rajoute la ligne Hc2:Put et la c'est la M... erreur 503 , le restart service ne suffit pas je doit faire le restaure et galere pendant plus d'une heure

 

 

 

Capture.PNG

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour, 

 

Bon sorti de l'hosto..j'espere que ta convalescence se passe bien. 

 

C'est bizarre quand même que l'api.get ne fonctionne pas chez toi ;-) 

 

Après la modification que tu fais, il faut reencoder ton nouveau json avec un nom different à mon avis puis il faut renvoyer tout le json

Comme ceci

 

local newJson = json.encode(jsonTable)
HC2:PUT("/api/panels/drenchers", newJson)

 

Courage ;-) 

 

l'api.get fonctionnerait on aurait pas a faire tout ça;-) 

Partager ce message


Lien à poster
Partager sur d’autres sites

j'ai reussi a faire fonctionner l'api.get

local response = api.get("/api/panels/drenchers") il faut retirer "/Api"

local response = api.get("/panels/drenchers")

mais encore un essai erreur 503 je vais craquer ;(

Partager ce message


Lien à poster
Partager sur d’autres sites

Au fond du lit a me prendre la tete avec ma Hc2 La boite ne veux pas redemarrer , c'est reparti pour un restaure .

j'ai juste essayé d'ecrire le raindelay en numerique avant le api.put.

Il doit y avoir un probleme de format, ce qui m'enerve c'est que cela a bien fonctionné pendant 1an

Partager ce message


Lien à poster
Partager sur d’autres sites

olaala, c'est de ma faute, j' n'avais pas vu, effectivement, il ne faut pas le /api..quel  c.. je te faire perdre du temps....PArdon..

 

je te refais ça avec l'api.get et api.put, inutile de gérer les erreurs ni d'encoder la réponse ;-) 

Partager ce message


Lien à poster
Partager sur d’autres sites

A tester évidemment ;-) mais ça devrait le faire ;-) 

 

local drenchersTable = api.get("/panels/drenchers")
fibaro:debug("Lecture de rainDelay avant modification: " ..drenchersTable.rainDelay.. " Cycles : " ..drenchersTable.cycles)
fibaro:debug("Nom  187 : " ..drenchersTable.drenchers[1].name.." Mode : "..drenchersTable.drenchers[1].mode)
-- ---------------------
drenchersTable.rainDelay=34
drenchersTable.cycles=2
drenchersTable.drenchers[1].mode="off"
-- ---------------------
fibaro:debug("Lecture de rainDelay apres modification :" ..drenchersTable.rainDelay.. " Cycles : " ..drenchersTable.cycles)
fibaro:debug("Nom  187 : " ..drenchersTable.drenchers[1].name.." Mode : "..drenchersTable.drenchers[1].mode)
-- ---------------------
api.put("/panels/drenchers", drenchersTable)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Il n'y a pas moyen des que je fais l'api.put je pars en erreur 503. et restore obligatoire

De ton coté ,tu as essayé avec ta box? je sais plus quoi faire .

ca sert a rien d'avoir de la domotique pour gerer son arrosage si l'on ne peu pas la gerer comme on veut en fonction de la meteo

Partager ce message


Lien à poster
Partager sur d’autres sites

SAlut,

 

Je te l'ai dit, je n'utilise pas le panneau d'arrosage.

Les api.put fonctionnent. c'est bizarre, t'as essaye d'alerter le support.

 

Essai un api.put sur autre chose que le panneau d'arrosage, pour tester. Ca permettra peut-être d'éliminer des causes.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut pepite,

je pense avoir essayé dans tous les sens meme avec mon restore en 4.036 ou cela fonctionnait correctement.

J'ai vu des problemes similaires sur d'autre forum donc J'ai fait un ticket au support fibaro mais , ils sont fermé.

Dans l'attente de la reponse, en tout cas merci et à suivre ;):15:

Partager ce message


Lien à poster
Partager sur d’autres sites

Meme un put sur un simple device, genre la description d un module ?
Wait and see:-)

Envoyé de mon Nexus 5X en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

j'attends la reponse de fibaro, j'en est marre de faire des restore sur restore.

Pourtant j'avais trouvé le type de variable a ecrire qui etait bien integer le probleme doit etre ailleur

Il va falloir remettre toutes les icones quel bordel.

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 14 heures, tibo789 a dit :

j'attends la reponse de fibaro, j'en est marre de faire des restore sur restore.

Pourtant j'avais trouvé le type de variable a ecrire qui etait bien integer le probleme doit etre ailleur

Il va falloir remettre toutes les icones quel bordel.

Bonjour, j'ai refait des tests avec mes panneaux et le code partagé précédemment et aucun soucis chez moi.

Avez-vous essayé de supprimer totalement les panneaux et d'en créer de nouveaux ?

Autre piste qui pourrait avoir une relation de cause à effet, vérifiez si ipaddress/api/mobile/interface/data donne bien un xml complet, si pas couper le courant de la box et la laisser redémarrer.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour, j'aviais jamais vue a priori le fichier est complet. apres le restore ,il doit se recreer completement je pense.

Oui mais il me semble que l'on a pas la meme version d'apres ce que tu m'a dit . je suis en 4.120 et en 4.036 ca marche j'ai fait le test en restorant la box

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 1 heure, tibo789 a dit :

Bonjour, j'aviais jamais vue a priori le fichier est complet. apres le restore ,il doit se recreer completement je pense.

Oui mais il me semble que l'on a pas la meme version d'apres ce que tu m'a dit . je suis en 4.120 et en 4.036 ca marche j'ai fait le test en restorant la box

moi je suis en 4.120

 

Partager ce message


Lien à poster
Partager sur d’autres sites

OK, C'est reparti. J'efface mes 7 arroseurs , je sauvegarde, je reboot et je teste ton code

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon courage :)

Partager ce message


Lien à poster
Partager sur d’autres sites

En edoerant que ca soit la solution :-) courage

Envoyé de mon Nexus 5X en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour Loizeauc, J'ai reussi a faire fonctionner ton code apres quelques modif , il faut ajouter l'index du tableau drenchers => drenchers

Révélation

for i = 1, #dr do
       fibaro:debug("Device : " .. #dr)
      id = jsonTable.drenchers.id
     nd = jsonTable.drenchers.nextDrenching
     md = jsonTable.drenchers.mode
       fibaro:call(id, "setDrenchingMode", "auto")
     cy = jsonTable.drenchers.cycles
 
     -- si pas d'enchainage entre les arroseurs alors remise du temps de départ
       if ds == 0  then
       hhn = hh -- début du cycle 1
       mmn = mm 
     end
       -- modification de chaque ligne de cycle
       for c = 1, #cy do
       fibaro:debug("Cycle : " .. c)
         jsonTable.drenchers.cycles[c].hour = hhn
            jsonTable.drenchers.cycles[c].minute = mmn
         if da == 0 or jsonTable.drenchers.cycles[c].duration == 0 then
             jsonTable.drenchers.cycles[c].duration = dun
         end
           du = jsonTable.drenchers.cycles[c].duration

ET CA MARCHE SANS PLANTAGE

J'ai reussi a changer le mode et la duree

Bon , il n'y a plus qu'a remonter les manches pour faire VD digne de ce nom

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

GG !

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour , en résumé pour résoudre le problème de l'erreur 503 sur modification du json drenchers, il aura fallut supprimer le panneau d'arrosage et le recréer Bizarre mais ça marche nickel.

En tout cas de votre aide:74:

D’où le VD qui permet le pilotage total de l'arrosage bien sur le délai et ajustement sont piloté par une scène en fonction de la météo

Capture.PNG.c9c867bc9c02c1f1afa6f73ecc239e84.PNG

Arrosage.vfib

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 1 minute, tibo789 a dit :

Bonjour , en résumé pour résoudre le problème de l'erreur 503 sur modification du json drenchers, il aura fallut supprimer le panneau d'arrosage et le recréer Bizarre mais ça marche nickel.

En tout cas de votre aide:74:

D’où le VD qui permet le pilotage total de l'arrosage bien sur le délai et ajustement sont piloté par une scène en fonction de la météo

Capture.PNG.c9c867bc9c02c1f1afa6f73ecc239e84.PNG

Arrosage.vfib

Quelques fois, quand plus rien ne marche ... 
merci pour le VD

Christophe 

Partager ce message


Lien à poster
Partager sur d’autres sites

Super nouvelle ;-) tu as tout fait. 

Partager ce message


Lien à poster
Partager sur d’autres sites

×