mikael2235 12 Signaler ce message Posté(e) 28 mai 2015 Voici le json pour "off" : {"adjustWater":20,"rainDelay":0,"cycles":1,"drenchers":[{"id":122,"name":"Arrosage","mode":"off","dead":"false","manualTime":0,"days":["Fr","Mo","Sa","Su","Th","Tu","We"],"cycles":[{"hour":21,"minute":15,"duration":3}],"nextDrenching":20501,"state":"false"}]} Et le code que j'ai mis dans mon module virtuel : HC2 = Net.FHttp("mon_i^p",80) HC2:setBasicAuthentication("admin", "mon_password") -- get table response ,status, errorCode = HC2:GET("/api/panels/drenchers") jsonTable = json.decode(response) -- changement mode jsonTable.mode = "off" -- modifie la valeur "mode" json = json.encode(jsonTable); HC2:PUT("/api/panels/drenchers", json) fibaro:log("ready") fibaro:call(128, "setProperty", "ui.Label1.value", "ARROSAGE OFF"); Mais quand je clique sur le bouton du module virtuel, le code s'execute bien, la valeur du label change aussi, mais pas le json ! Donc ça ne doit pas marcher. Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 28 mai 2015 c'est moi, apriori le "mode" est sous "drenchers" peut-etre json.drenchers.mode, j'avoue, je ne sais pas allé dans un sous-sous ;-) Par exemple pour verifier modifie ton raindelay pour tester : jsonTable.rainDelay Partager ce message Lien à poster Partager sur d’autres sites
Did 1 722 Signaler ce message Posté(e) 28 mai 2015 Le mode auto ou off à l'air attribué à chaque Id d'arroseur dans le json. {"adjustWater":0,"rainDelay":0,"cycles":1,"drenchers":[{"id":84,"name":"Haies","mode":"auto","dead":"0","manualTime":0,""days" :["Fr","Mo","Sa","Su","Th","Tu","We],"cycles":[{"hour":21,"minute":10,"duration":5}],"nextDrenching":17001,"state":"0"}, {"id":86,"name":"Cour","mode":"off","dead":"0","manualTime":0,"days":["Fr","Mo","Sa","Su","Th","Tu","We"], "cycles":[{"hour":20,"minute":45,"duration":5}],"nextDrenching":15501,"state":"0"} Partager ce message Lien à poster Partager sur d’autres sites
mikael2235 12 Signaler ce message Posté(e) 28 mai 2015 Did, on peut faire une commande json, en précisant le module peut-etre (comme un WHERE ID=xx ) ? Partager ce message Lien à poster Partager sur d’autres sites
Did 1 722 Signaler ce message Posté(e) 28 mai 2015 C'est là où je bloque, je suis déjà content d'être arrivé jusque là . Partager ce message Lien à poster Partager sur d’autres sites
Berale64 630 Signaler ce message Posté(e) 28 mai 2015 Plutôt que la météo toujours très incertaine et peu fiable, personne n'a essayé de jouer avec un truc comme ça ? http://tiptopboards.free.fr/arduino_forum/viewtopic.php?f=2&t=50&sid=058cc5ddd82e23ab20793564d63ddc20 Partager ce message Lien à poster Partager sur d’autres sites
Lazer 8 486 Signaler ce message Posté(e) 28 mai 2015 Quand le SBS (mydomotique / domotique-info) sera dispo, on pourra y connecter ce genre de sonde, et surtout l'intégrer facilement ànotre box grâce àl'API. En attendant, c'est faisable, mais faut maitriser Arduino.... Partager ce message Lien à poster Partager sur d’autres sites
Did 1 722 Signaler ce message Posté(e) 30 mai 2015 @mikael2235, Le plus simple est de passer à "off" les électrovannes que tu ne veut pas qu'elles arrosent dans l'interface HC2. Partager ce message Lien à poster Partager sur d’autres sites
mikael2235 12 Signaler ce message Posté(e) 1 juin 2015 Did, justement le but est d'eviter la connexion àl'interface via un PC, d'autant plus que le mode ne peut pas etre changé via l'appli Android (ou alors j'ai pas trouvé comment) Partager ce message Lien à poster Partager sur d’autres sites
Did 1 722 Signaler ce message Posté(e) 1 juin 2015 Non, tu as raison, pas possible de régler sur les applis, ce n'est dispo que sur l'interface HC2 mais alors est-ce que cela se comporte pas comme pour un capteur avec armé, désarmé? Partager ce message Lien à poster Partager sur d’autres sites
cybersquat 47 Signaler ce message Posté(e) 6 juin 2015 salut à tous ^^ Excellent tuto A Quimperlé, j'ai pas ce problème, vive la bretagneeeeeeeuuuu ! Partager ce message Lien à poster Partager sur d’autres sites
q.philippe 30 Signaler ce message Posté(e) 11 juin 2015 Salut, tres tres compliquer cet arrosage,,,,,( mais j'irai pas essayer le new module de GreenIQ) Apres avoir essayer plusieurs scenes sur le forum, rien de concluant encore, je vais essayer le tien ! Partager ce message Lien à poster Partager sur d’autres sites
elacombe 16 Signaler ce message Posté(e) 9 août 2015 Bonjour, Quelqu'un saurait il comment changer la valeur maximum du temps d'arrosage proposé : 15 min c'est vraiment trop peu pour l'arrosage d'un verger par exemple...j'aimerais bien pouvoir arroser 120 minutes par exemple...comment faire? Merci Partager ce message Lien à poster Partager sur d’autres sites
Moicphil 1 118 Signaler ce message Posté(e) 10 août 2015 Le temps mini par cycle est bridé au max à 15 min. et pas possible de le modifier La seule solution si tu souhaites un arrosage plus long, est de cumuler les cycles ( maxi 5 ) Ce qui fait donc un temps maxi d'arrosage / jour de : 1 heure, 15 minutes Partager ce message Lien à poster Partager sur d’autres sites
Berale64 630 Signaler ce message Posté(e) 24 novembre 2015 Afin de connaitre l'humidité du sol, Fibaro recommande ce capteur connecté à un RGBW. Malheureusement c'est en polonais. Quelqu'un connait ? http://www.label.pl/po/rek797.html Partager ce message Lien à poster Partager sur d’autres sites
mburget 0 Signaler ce message Posté(e) 21 juillet 2016 Salut, chez moi (V4.070) le Raindelay doit etre un nombre et non un string pour que cela fonctionne. Il y a également un autre port pour ne pas avoir a s'autentifier: voici ma solution: HC2 = Net.FHttp("127.0.0.1", 11111); r,s,e = HC2:GET("/api/panels/drenchers"); jsonTable = json.decode® -- change table in Lua for 0 hours delay jsonTable.rainDelay = 5 -- send back json = json.encode(jsonTable); r,s,e = HC2:PUT("/api/panels/drenchers", json) if tonumber(e) == 0 then fibaro:debug("Raindelay aktualisiert."); else fibaro:debug("Aktualisierung vom Raindelay fehlerhaft!!!"); end Partager ce message Lien à poster Partager sur d’autres sites
foxchip 12 Signaler ce message Posté(e) 14 août 2016 Bonjour à tous, je cherche à faire un VD me permettant de stopper le panneau d'arrosage pour l'hiver par exemple, et donc mettre le mode à off pour toutes les zone j'ai essayé les différents scripts de ce sujet mais ca ne fonctionne pas. Est ce que quelqu'un pourrait me mettre un script fonctionnel sur V4? Partager ce message Lien à poster Partager sur d’autres sites
foxchip 12 Signaler ce message Posté(e) 14 août 2016 voici mon script : j'arrive bien a récupérer les valeurs mais pour je ne sais quel raison, le fichier json n'est pas enregistré HC2 = Net.FHttp("127.0.0.1", 11111); r,s,e = HC2:GET("/api/panels/drenchers") jsonTable = json.decode® -- change table in Lua for 0 hours delay for i=1,10,1 do jsonTable.drenchers.mode = "auto" end json2 = json.encode(jsonTable) r,s,e = HC2:PUT("/api/panels/drenchers", json2) fibaro:call(484, "setProperty", "ui.Label1.value", "AUTO") Partager ce message Lien à poster Partager sur d’autres sites
foxchip 12 Signaler ce message Posté(e) 15 août 2016 je continue a investiguer et je constate qu'avant le PUT, la variable json2 contient bien les bon champs avec les bonnes valleurs mais les champs ne sont plus dans le meme ordre. est ce que le probleme ne viendrait pas de cela: les champs doivent être dans le meme ordre? Partager ce message Lien à poster Partager sur d’autres sites
Loizeauc 2 Signaler ce message Posté(e) 6 septembre 2016 J'ai aussi fait quelques tests et bien que les champs ne soient pas dans le même ordre, le raindelay se met bien à jour mais pas le mode Partager ce message Lien à poster Partager sur d’autres sites
foxchip 12 Signaler ce message Posté(e) 6 septembre 2016 j'avais aussi essay d'envoyé le fichier directement en PHP mais ca ne fonctionne pas donc ca doit etre bloqué par fibaro j'ai contourné en envoyant chaque jour un raindelay via GEA pour mettre en standby Partager ce message Lien à poster Partager sur d’autres sites
Loizeauc 2 Signaler ce message Posté(e) 6 septembre 2016 sur le forum fibaro, j'ai trouvé cette commande : HC2:POST("/api/devices/32/action/setDrenchingMode", '{"args":["off"]}') mais ça ne marche pas non plus, du moins pas en remplaçant la ligne hc2:put Partager ce message Lien à poster Partager sur d’autres sites
foxchip 12 Signaler ce message Posté(e) 6 septembre 2016 je pense que c'est vraiment bloqué car meme en utilisant la méthode du Fake Device on ne peut pas modifier ce champ Partager ce message Lien à poster Partager sur d’autres sites
Loizeauc 2 Signaler ce message Posté(e) 12 septembre 2016 voilà une base pour mettre à jours tous les arroseurs d'un panneau à Auto ou off local localhost = '127.0.0.1'; local port = 11111; HC2 = Net.FHttp(localhost, port) response ,status, errorCode = HC2:GET("/api/panels/drenchers") -- entete rd = jsonTable.rainDelay -- table des arroseurs dr = jsonTable.drenchers for i = 1, #dr do id = jsonTable.drenchers.id nd = jsonTable.drenchers.nextDrenching md = jsonTable.drenchers.mode -- la mise à jour du Json ne permet que de modifier l'entête du panneau, les autres propriétés semblent être attachées directement au device. fibaro:call(id, "setDrenchingMode", "off") -- ou "auto" fibaro:debug("mode -> " .. md .. " pour id " .. id .. "raindelay " .. rd .. " Nextdrench : " .. nd ) end 1 Partager ce message Lien à poster Partager sur d’autres sites
foxchip 12 Signaler ce message Posté(e) 12 septembre 2016 Merci ca fonctionne j'avais pensé au json sur le device mais pas directement un fibaro:call Partager ce message Lien à poster Partager sur d’autres sites