fredokl Posté(e) le 28 avril 2021 Signaler Posté(e) le 28 avril 2021 Ok je doit confondre avec autre chose je pense.
fredokl Posté(e) le 28 avril 2021 Signaler Posté(e) le 28 avril 2021 Par contre je n'ai pas saisi le 0... Le -1 pour les déclenchements instantanés, 30 la durée par défaut mais le 0 j'avoue ne pas avoir saisi l'utilisation.
Lazer Posté(e) le 28 avril 2021 Signaler Posté(e) le 28 avril 2021 Le -1 est vraiment à part, ce sont les déclenchements instantanés (= triggers de scènes comme on les avait sur la HC2) Le 0, c'est une durée comme une autre, comme 30, 60, 90, etc... aucune différence. Et toutes ces règles rentrent alors dans la boucle infinie de vérification des conditions de GEA. GEA fonctionne par cycle de 30 secondes (par défaut) À chaque cycle, GEA vérifie si la condition est valide depuis au moins (supérieur ou égal à) la durée indiquée. Oui parce que l'utilisateur, quand il allume une lumière, il le fait à un moment quelque part entre 2 cycle de GEA. Mais ça GEA ne le sait pas, lui il ne regarde l'état des modules qu'à chaque cycle. Donc quand tu mets 30s, au moment où GEA déclenche la règle, ton module est effectivement allumé à un moment situé quelque part entre 30s et 59s (juste après le cycle précédent) Exemple avec 30s : GEA.add(123, 30, "Le module 123 est allumé depuis au moins 30 secondes", {ACTIONS}) - Au premier cycle, la condition est valide, mais ça fait moins de 30s, donc GEA ne fait rien - Au second cycle, la condition est valide, et ça fait plus de 30s, donc GEA réalise les actions - Au troisième cycle, la condition est toujours valide, mais les actions ont déjà été exécutées au cycle précédent, donc GEA ne fait rien (sauf si on a spécifié {"Repeat"} ). => La règle ne sera "réarmée" qu'après que ses conditions soit devenue invalides. Dans le cas présent, il faut éteindre le module 123 puis le ré-allumer pour que GEA reprennent le calcul des 30 secondes. Autre exemple avec 0s : GEA.add(123, 0, "Le module 123 est allumé depuis au moins 0 secondes", {ACTIONS}) - Au premier cycle, la condition est valide, et ça fait plus de 0s, donc GEA réalise les actions - Au second cycle, la condition est toujours valide, mais les actions ont déjà été exécutées au cycle précédent, donc GEA ne fait rien (sauf si on a spécifié {"Repeat"} ). Du coup, tu as bien compris que si tu mets une durée de 60s, alors les actions ne seront réalisées qu'au 3ème cycle. Le mieux c'est d'expérimenter par toi même, c'est ce que j'ai fait pour comprendre le fonctionnement de GEA quand je l'ai porté sur HC3, car je me suis rendu compte que je l'utilisais depuis des années sur HC2 soit avoir bien compris son fonctionnement (remarque c'est toujours le cas, à part @Steven je ne sais pas si quelqu'un a compris à 100% tellement l'outil est complet et puissant) Donc tu prend un module quelconque (un des QuickApps données en exemples par Fibaro, qui ne font rien, de type Binary Switch), tu mets des durées de 0, ou 30s, la fenêtre de logs à coté, et tu verras immédiatement les conséquences des changement d'état du module. D'abord il faut réaliser des tests unitaires (avec 1 seule condition), puis petit à petit ajouter plusieurs conditions (il faut que toutes les conditions soient valides pour déclencher la règle.... sauf si on utilise "Or"...) 2 1
fredokl Posté(e) le 28 avril 2021 Signaler Posté(e) le 28 avril 2021 Merci @Lazer pour ces précisions. C'est plus clair maintenant.
manulemalin Posté(e) le 4 mai 2021 Signaler Posté(e) le 4 mai 2021 Bonsoir j’ essai de cumuler de cumuler deux condition pour le déclenchement d'une scène à une certaine heure le week-end En entrant le code suivant, rien n apparait dans la liste "debug" (sans: {Days", "weekEnd"} ça apparait et sa fonctionne Quelqu'un pourrait-il m aider afin de trouver la syntaxe, je pense pas être loin, mais je coince Merci beaucoup GEA.add({"Days", "WeekEnd"},{"Time", "Sunrise>08:40", "09:00"}, 30, "Ouverture volets", {"StartScene", 36} )
Dragoniacs Posté(e) le 5 mai 2021 Signaler Posté(e) le 5 mai 2021 Quand tu mets plusieurs conditions, il faut les entourer avec des { } :GEA.add({{"Days", "WeekEnd"},{"Time", "08:40", "09:00"}}, 30, "Ouverture volets", {"StartScene", 36} )Le sunrise ne s'utilise pas avec un >Envoyé de mon RMX1993 en utilisant Tapatalk 1
Lazer Posté(e) le 5 mai 2021 Signaler Posté(e) le 5 mai 2021 Euh, si, on peut utiliser Sunrize avec >, pourquoi tu dis ça ? Je l'utilise dans mon GEA v6 sur HC2 Pour moi cette condition devrait être valide : {"Time", "Sunrise>08:40", "09:00"}
Dragoniacs Posté(e) le 5 mai 2021 Signaler Posté(e) le 5 mai 2021 Ah ben j'en apprends encore tous le jours , désolée.Envoyé de mon RMX1993 en utilisant Tapatalk
Lazer Posté(e) le 5 mai 2021 Signaler Posté(e) le 5 mai 2021 Ouais c'est ça la magie de GEA Extrait de la doc de syntaxe rédigée par @pepite : Je souhaite que la lumière s'allume au levé du soleil mais pas avant 7h30 : Utiliser le paramètre Sunrise>07:30 ou Sunrise<07:30. GEA.add({"Time", "Sunrise>07:30", "07:35"}, 60, "Allumage lumière", {"TurnOn", 18}) 1
manulemalin Posté(e) le 5 mai 2021 Signaler Posté(e) le 5 mai 2021 Merci @Dragoniacs je me doutais qu’il me manquait pas grand chose je teste ça ce soir
manulemalin Posté(e) le 6 mai 2021 Signaler Posté(e) le 6 mai 2021 (modifié) Bonjour la modification a marché à merveille, je mets la ligne valide en dessous au cas où cela puisse aider quelqu’un (Activation d une scène qui ouvre mes volets , uniquement le week-end, au levé du soleil mais pas avant 8h40 ) merci de votre aide GEA.add({{"Days", "WeekEnd"},{"Time", "Sunrise>08:40", "08:45"}}, 30, "Ouverture volets", {"StartScene", 36} ) Modifié le 6 mai 2021 par manulemalin
Forall Posté(e) le 11 mai 2021 Signaler Posté(e) le 11 mai 2021 Hi all, a maybe basic question is it possible to use ">" or "<" with global variables or is there a better way to solve the problem. I am using some timer e.g. if it is nighttime and any outdoor lights is on, turn them of after 5 min if any door i opened or movement during night, turn on lights and reset the counter GEA.add ({"Global", "time of day", "night"}, 30, "", {"Global", "outdoor night timer", "inc+"}) GEA.add({618}, -1, "", {"Global", "outdoor night timer", "0"}) GEA.add({425}, -1, "", {"Global", "outdoor night timer", "0"}) GEA.add({553}, -1, "", {"Global", "outdoor night timer", "0"}) GEA.add({601}, -1, "", {"Global", "outdoor night timer", "0"}) GEA.add ({"Global", "outdoor night timer", >10}, -1, "", {"Turnoff", 620, 659, 362})
Lazer Posté(e) le 11 mai 2021 Signaler Posté(e) le 11 mai 2021 To compare a Global Variable with any value, you must use "Global+" or "Global-" : GEA.add({"Global+", "outdoor night timer", 10}, -1, "", {"TurnOff", {620, 659, 362}}) Furthermore, take care of your IDs in the TurnOff action, they must be enclosed with {} 1
Forall Posté(e) le 12 mai 2021 Signaler Posté(e) le 12 mai 2021 Il y a 17 heures, Lazer a dit : To compare a Global Variable with any value, you must use "Global +" or "Global-" : Furthermore, take care of your IDs in the TurnOff action, they must be enclosed with {} Thank you very much @Lazer
Forall Posté(e) le 12 mai 2021 Signaler Posté(e) le 12 mai 2021 It's so hard to search for old discussions on GEA but if i remember correctly it is possible to use local variables within GEA but i cant find any clue on how to do it. I am wrong or could anyone tell me how to do this?
Lazer Posté(e) le 12 mai 2021 Signaler Posté(e) le 12 mai 2021 I think you should look for "VariableCache"
Forall Posté(e) le 14 mai 2021 Signaler Posté(e) le 14 mai 2021 (modifié) The 5/12/2021 at 8:08 PM, Lazer said: I think you should look for "VariableCache" Thanks again @lazer found that thanks to you once again! Best regards, Daniel Modifié le 14 mai 2021 par Forall
Massalia Posté(e) le 22 mai 2021 Signaler Posté(e) le 22 mai 2021 (modifié) Bonjour, si j'ai un équipement qui doit être lancé toutes les heures 13:00, 14:00 Etc .. Quelle est la bonne syntaxe dans GEA ? Je débute en GEA Modifié le 22 mai 2021 par Massalia
Lazer Posté(e) le 22 mai 2021 Signaler Posté(e) le 22 mai 2021 Normalement GEA n'est pas prévu pour fonctionner comme un scheduleur, mais on peut y arriver quand même. Tu veux qu'il se déclenche exactement aux heures piles ? Ou bien juste avec un intervalle de 1 heure (exemple ! 13:27, 14:27, etc) La seconde option est ultra simple, il suffit de mettre une durée de 1h, donc 60*60 secondes La 1ère est plus pénible, il faut mettre autant de règles avec la Time qu'il y a d'heures dans la journée... du coup 24 : {"Time", "13:00", "13:00"} etc
Massalia Posté(e) le 22 mai 2021 Signaler Posté(e) le 22 mai 2021 Ok, c'est pour faire dire l'heure à mes Lapins, c'est que j'ai fait (12:00,13:00 ...) c'est bon alors. Nouveau possesseur d'une HC3, c'est Génial Merci 1
yuri80 Posté(e) le 27 mai 2021 Signaler Posté(e) le 27 mai 2021 Il 22/5/2021 alle 19:40, Massalia ha detto: Ok, è per dire ai miei conigli l'ora, è quello che ho fatto (12: 00,13: 00 ...) quindi va bene. Nuovo proprietario di una HC3, è fantastico grazie Now I need of another suggestion to use in GEA code, the command to start the Sonos Playlist "Relax" associated on button with label "Q6: --" (Sonos id.86) Currently I use this action by the scene mode and it works fibaro.callUI(86, 'onReleased', 'btnSavedQueue6') Can you help me please? Thanks in advance for yuor support
yuri80 Posté(e) le 6 juin 2021 Signaler Posté(e) le 6 juin 2021 Hi, I solved using the following command line: "when the button 3 of the remote controller device id.136 is held down, GEA turn on the playlist Q5 by the Sonos id 86" I hope to help others guys! :-) GEA.add({"CentralSceneEvent", 136, 3, "HeldDown"}, -1, "", {"QuickApp", 86, "playSavedQueue", 5}) 1
Manu31 Posté(e) le 8 juin 2021 Signaler Posté(e) le 8 juin 2021 (modifié) Bonjour à toutes et tous. Il commence à faire chaud et j'aimerai gérer l'ouverture des volets différement de ce que j'avais fait. Je m'explque : Si le profile = Home / que c'est un jour travaillé / Que le temps est clair / et que la température ext > 22, alors j'ouvre mes volets à 30% J'ai commencé à écrire ca. mais ca bloque mon GEA GEA.add({{"Profile", "Home"}, {"Weather", "Clear"}, estTravail, {"Value+", id["Temp_Ext"] > 22.0}, {"Time", "08:00", "08:10"}}, 1*60, "", {{"Open",id["Volet_Cuisine"],30}}) Alors me suis dis que j'allais contourner le pb : Si le profile = Home / que c'est un jour travaillé / que le detecteur de lumunosité > 1500 / et que la température ext > 22, alors j'ouvre mes volets à 30% GEA.add({{"Profile", "Home"}, {"Value+", id["DetLum_Ext"] > 1500}, estTravail, {"Value+", id["Temp_Ext"] > 22}, {"Time", "08:00", "08:10"}}, 1*60, "", {{"Open",id["Volet_Cuisine"],30}}) mais pas mieux. Une idée de ce que je ne vois pas ? En vous remerciant Modifié le 8 juin 2021 par Manu31 Rajout d'info
Lazer Posté(e) le 8 juin 2021 Signaler Posté(e) le 8 juin 2021 Quand tu dis que ça bloque GEA, il faut donner les logs, sinon difficile de t'aider. Cela dit, dans le cas présent, l'erreur saute aux yeux, il ne faut pas mettre de > dans ton option "Value+", mais juste une virgule. Réfère toi toujours à la doc de syntaxe si tu as un doute. {"Value+", id["Temp_Ext"], 22}
Messages recommandés