joesab Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 bonjpur voilà je voudrait peaufiner mes ouvertures de volets, en ce moment, le volet du salon s'ouvre au lever du soleil, et se ferme au coucher du soleil + 40 mn...grosso modo j'ai variable jours chomés/travail j'aimerai avoir une ligne de commande, qui vérifie s'il est déjà ouvert, et ne s'ouvre pas avant 6 h 30 les jours de travail (8h30 jours chômés), et ne se ferment pas après 22 h. (pour l'été) GEA.add(true, 1*60, "Ouverture Volet SALON", {estTravail,{"Time", "Sunrise>06:30", "Sunset"},{"Open", id["VOLET_SALON"], 100}}) GEA.add(true, 1*60, "Ouverture Volet SALON", {estChome,{"Time", "Sunrise>08:30", "Sunset"},{"Open", id["VOLET_SALON"], 100}}) je ne vois pas ou mettre la condition si déjà ouvert et ne suis pas sà»r de ma ligne de commande pour la fermeture j'ai cela actuellement --Fermeture des volets du bureau et de la chambre----- GEA.add(true, 1*60, "fermeture volets bureau/chambre", {{"Time", "Sunset+20", "Sunset+25"}, {"Close",id["VOLET_BUREAU"],100}, {"Close",id["VOLET_CHAMBRE2"],100}}) merci pour votre aide
Shyrka973 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @PITP2 Portant cette ligne fonctionne chez moi: GEA.add(id["OP_SALON"], -1, "Capteur armé", { {"Inverse"}, {"Armed"}, {"turnOn", id["LAMPE_BUREAU"]}, }) J'ai utilisé cette règle hier sur un capteur de porte et quand j'arme le capteur et que la porte est fermée, je reçois une notification et la lampe s"allume. Quelqu'un d'autre peut tester cette règle en adaptant les id à chez vous ? N'oubliez pas de mettre l'id dans l'entête de GEA ainsi: 29 armed La porte doit être fermé, puis vous armez le capteur. Merci.
PITP2 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @shyrka, cela marche aussi chez moi maintenant que j'ai mis "29 armed" j'avais testé ce week end sur une box et ce matin je suis sur une autre et je n'y ai plus pensé .. désolé pour le dérangement Et merci beaucoup pour ta solution qui fonctionne bien ne me reste plus qu'à comprendre pourquoi sur mes autres lignes GEA je n'arrive pas à faire fonctionner les conditions à chaque fois il doit y avoir des subtilités dans la syntaxe que je ne comprends pas
Steven Posté(e) le 23 mars 2015 Auteur Signaler Posté(e) le 23 mars 2015 @Shyrka973 29 armed C'est pas une bonne idée car lors de l'armement / désarmement, le scénario va se lancer .. mais on s'en fiche, c'est quand 29 value change que cela nous intéresse. Dans ce cas, là , GEA va vérifier l'état du détecteur ET s'il est Armed
Steven Posté(e) le 23 mars 2015 Auteur Signaler Posté(e) le 23 mars 2015 Ou j'ai pas compris la question ... Le but est d'allumer la lumière lors de l'armement ? Si oui ... prend mon précédent message et LANCE LE à la poubelle .. à côté de mon cerveau.
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 hum ça sent la case "Do not allow alarm to stop scène while alarm is running" décochée.
PITP2 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @steven, elle est ou ta poubelle que je récupère un morceau de ton cerveau ? pour que je comprenne pourquoi je n'arrive jamais à faire marcher les conditions En effet je voulais allumer une lampe lorsqu'un détecteur était "armed" et je confirme bien que avec 29 armed c'est ok alors que 29 value cela ne fonctionne pas. @hansolo, cela ne sent meme pas ca 1
Shyrka973 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Steven Si l'id 29 est le capteur d'une porte, pour 29 value GEA se déclenchera quand la porte s'ouvrira. Pour 29 armed GEA se déclenchera quand le capteur vient d'être armé. @PITPI2 voudrait que la règle s'exécute lors que le capteur vient d'être armé. Je pense que "Armed" n'est pas vraiment fait pour un déclenchement immédiat. Envoyé de mon iPhone en utilisant Tapatalk
Steven Posté(e) le 23 mars 2015 Auteur Signaler Posté(e) le 23 mars 2015 Content de voir qu'il n'y a pas que moi qui lit la totalité des posts @PITP2 Essaie cela stp. 1ère ligne ... GEA_Heure passe à 0 1 heure après que GEA_Heure soit passé à 1 et non pas n'importe quand 2ème ligne .. Vade retro les if GEA.add( {"Global", "GEA_heure", "1"}, 60*60, "", {{"Global", "GEA_heure", "0"}}) GEA.add({id["CP_SALON"], {"Global", "GEA_heure", "0"}}, -1 , "", {{"Function", function() TtsTempSalon() end},{"Global", "GEA_heure", "1"}}) Le "Repeat" : Le repeat est utile quand la condition (toujours respectée) ne change pas et qu'on veux quand même recevoir une notification toutes les X secondes. Exemple une porte TOUJOURS ouvertes et on veux recevoir une notification toutes les 10mn. GEA.add(<id_porte>, 10*60, "Merci les courants d'air", {{"Repeat"}}) par contre, il est complètement inutile si la condition change ou est à true ... exemple : GEA.add( {"Global", "GEA_heure", "1"}, 60*60, "", {{"Global", "GEA_heure", "0"}}) ... dans ce cas la condition de départ est changé par l'action donc le repeat est inutile car lors des prochaines 30 secondes GEA va tester la condition ... elle sera fausse .. il va donc redémarrer le compteur. par très clair mais bon, je me comprends moi-même
Shyrka973 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Steven, Si je me trompe, dis le moi.
Steven Posté(e) le 23 mars 2015 Auteur Signaler Posté(e) le 23 mars 2015 @Shyrka973 Non, tu as raison, mais PITP2 a déjà confirmé tout cela avant ton message. Idem pour Hansolo qui donne une réponse, plus que valable, mais trop tard C'est juste moi qui n'avais pas lu correctement la question et qui donc a donné un réponse à côté de la plaque ... mais je me suis rendu compte trop tard.
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 mieux vaut tard que jamais... La pensée du jour. 1
Shyrka973 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Steven Que penses-tu d'un ajout à GEA ainsi: GEA.add({ {"TriggerName", 12, "battery"}, -1, "", ... }) Cela permettrait d'intercepter les triggers comme 29 armed, 29 battery, ... Je vais essayer d'ajouter cette fonctionnalités à GEA.
Fredric Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 bonjour tout le monde, j'ai un P'ti souci de rien qui me bloc. j'ai une baie vitrée avec un capteur sur chaque ouvrant. je veux que quand on ouvre un des cotés, cela coupe le chauffage de la pièce. je l'ai fait pour toutes les autre pièces et cela fonctionne parfaitement, mais il y à qu'une fenêtre. local Fentre_SM_open = {"Value",id["Windows_SMG"],"1"} , {"Value",id["Windows_SMD"],"1"} , {"Global", "Windows5", "Fermes"} local Fentre_SM_close = {"Value",id["Windows_SMG"],"0"} , {"Value",id["Windows_SMD"],"0"}, {"Global", "Windows5", "Ouverts"} GEA.add({Fentre_SM_open}, 30, "", {{"Global", "Windows5", "Ouverts"} , {"VirtualDevice", id["Mod_Chauf_SM"], "4"}}) GEA.add({Fentre_SM_close}, 3*60, "", {{"Global", "Windows5", "Fermes"} , {"VirtualDevice", id["Mod_Chauf_SM"], "3"}}) voici l’idée de code mais pas fonctionnel. je pense que c'est dans la condition qu'il y à problème.
Sebbrunie1 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Steven, Tu m'as donné ce code: local DistanceMaison1 = {"Function", function() return fibaro:calculateDistance(userLocation, EmplacementMaison1) end} C'est normal que je n'ai pas de GEA.add au début? comme cela non? local DistanceMaison1 = GEA.add(true , 30 , "" , {{"Function", function() return fibaro:calculateDistance(userLocation, EmplacementMaison1) end}})
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 Oui c'est une variable locale, pas une commande GEA
Sebbrunie1 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Frederic, a mon sens ta condition {"Global", "Windows5", "Fermes"} ou {"Global", "Windows5", "Ouverts"} dans ta variable locale ne sont pas utiles car tes deux premières le disent déjà .... mais ca ne changera probablement rien à ton problème. Moi je préfère faire une condition par variable locale... Sinon ca fou le binz
Sebbrunie1 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @ Hansolo, bou et ben ca marche pas..... c'est moche, je vais vraiment être obligé de passe par une scène
Fredric Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Sebbruniel, en principe, les deux premier me servent pour la condition. si ouvrant droite ou si ouvrant gauche ouvert et que la variable est sur Fermes alors.... et la deuxième pour la fermeture. local Fentre_SM_open = {"Value",id["Windows_SMG"],"1"} , {"Value",id["Windows_SMD"],"1"} , {"Global", "Windows5", "Fermes"} local Fentre_SM_close = {"Value",id["Windows_SMG"],"0"} , {"Value",id["Windows_SMD"],"0"}, {"Global", "Windows5", "Ouverts"} ensuite, dans ces lignes, c'est pour inverser la variable qui me sert ailleurs GEA.add({Fentre_SM_open}, 30, "", {{"Global", "Windows5", "Ouverts"} , {"VirtualDevice", id["Mod_Chauf_SM"], "4"}}) GEA.add({Fentre_SM_close}, 3*60, "", {{"Global", "Windows5", "Fermes"} , {"VirtualDevice", id["Mod_Chauf_SM"], "3"}})
Sebbrunie1 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 par contre c'est du "ET" et non du "OU". Tes conditions marchent que si tu ouvres les deux cotés de ta fenetre
Steven Posté(e) le 23 mars 2015 Auteur Signaler Posté(e) le 23 mars 2015 @Steven Que penses-tu d'un ajout à GEA ainsi: GEA.add({ {"TriggerName", 12, "battery"}, -1, "", ... }) Cela permettrait d'intercepter les triggers comme 29 armed, 29 battery, ... Je vais essayer d'ajouter cette fonctionnalités à GEA. L'idée est bonne mais j'ai peur que l'utilisateur pense que cela va remplacer l'entête. Il faut donc être clair avec cela. Sinon, c'est sà»r que cela permet d'être encore plus restrictif sur les déclenchements instantanés donc plus précis. @Fredric Pour que tes conditions fonctionnent, il faudrait que les 2 fenêtres soient ouvertes ce qui n'est sà»rement pas le but recherché. Voilà ce que je mettrais mais sans garanti car non testable : -- Ouverture d'une fenêtre GEA.add({"Value",id["Windows_SMG"],"1"}, 30, "", {{"Global", "Windows5", "Ouverts"}}) GEA.add({"Value",id["Windows_SMD"],"1"}, 30, "", {{"Global", "Windows5", "Ouverts"}}) GEA.add({"Global", "Windows5", "Ouverts"}, 30, "", {{"VirtualDevice", id["Mod_Chauf_SM"], "4"}}) -- Les 2 fenêtres sont fermées GEA.add({"Value",id["Windows_SMG"],"0"}, {"Value",id["Windows_SMD"],"0"}, 30, "", {{"VirtualDevice", id["Mod_Chauf_SM"], "4"}, {"Global", "Windows5", "Fermes"}})
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 Ce que je fais pour allumer une lampe si une des portes d'un placard est ouverte et éteindre si les deux portes sont fermées.(syntaxe des if datant des premières version de GEA) --Gestion lumière placard chb bas --Si un des capteurs d'ouverture est on j'allume 18 GEA.add(id["PlacardChb1"], -1, "" ,{{"turnOn", id["LampePlacardChb"]}}) GEA.add(id["PlacardChb2"], -1, "" ,{{"turnOn", id["LampePlacardChb"]}}) --Condition pour éteindre la lumière du placard, les deux détecteurs àOff GEA.add(id["PlacardChb1"], -1, "", {{"Inverse"},{"If",{{"Value-",id["PlacardChb2"],1}}},{"turnOff",id["LampePlacardChb"]}}) GEA.add(id["PlacardChb2"], -1, "", {{"Inverse"},{"If",{{"Value-",id["PlacardChb1"],1}}},{"turnOff",id["LampePlacardChb"]}})
Fredric Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 merci à vous, avec ça, je devrait me débrouiller
pepite Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @PITP2 : ecris comme ca pour ta condition tophoraire, a tester GEA.add({id["CP_SALON"], tophoraire}, -1 , "", {{"Function", function() TtsTempSalon() end}, {"Global", "GEA_heure", "1"}})
joesab Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 bonjpur voilà je voudrait peaufiner mes ouvertures de volets, en ce moment, le volet du salon s'ouvre au lever du soleil, et se ferme au coucher du soleil + 40 mn...grosso modo j'ai variable jours chomés/travail j'aimerai avoir une ligne de commande, qui vérifie s'il est déjà ouvert, et ne s'ouvre pas avant 6 h 30 les jours de travail (8h30 jours chômés), et ne se ferment pas après 22 h. (pour l'été) GEA.add(true, 1*60, "Ouverture Volet SALON", {estTravail,{"Time", "Sunrise>06:30", "Sunset"},{"Open", id["VOLET_SALON"], 100}}) GEA.add(true, 1*60, "Ouverture Volet SALON", {estChome,{"Time", "Sunrise>08:30", "Sunset"},{"Open", id["VOLET_SALON"], 100}}) je ne vois pas ou mettre la condition si déjà ouvert et ne suis pas sà»r de ma ligne de commande pour la fermeture j'ai cela actuellement --Fermeture des volets du bureau et de la chambre----- GEA.add(true, 1*60, "fermeture volets bureau/chambre", {{"Time", "Sunset+20", "Sunset+25"}, {"Close",id["VOLET_BUREAU"],100}, {"Close",id["VOLET_CHAMBRE2"],100}}) merci pour votre aide et moi et moi.... j'ai essayé ce matin la première commande, tous les volets se sont fermés !!!
Messages recommandés