sebcbien Posté(e) le 21 mai 2015 Signaler Posté(e) le 21 mai 2015 Bonjour, Je confirme ce bug de maxtime :-) http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?view=findpost&p=50870 http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?view=findpost&p=46007 http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?view=findpost&p=41996 p.s. Steven, pour corriger, je te propose une manière très subtile de le faire: MaxTime = MaxTime / 2 if MaxTime == 0.5 then MaxTime = 1 end
pepite Posté(e) le 21 mai 2015 Signaler Posté(e) le 21 mai 2015 je confirme aussi pour le Maxtime ;-) C'est qu'un petit bug ;-) belle subtilité sebcbien ;-)
jojo Posté(e) le 21 mai 2015 Signaler Posté(e) le 21 mai 2015 en attendant la correction, j'essayerais avec {“StopTaskâ€, <id_tâche>} qui devrait pouvoir remplater un {"MaxTime", 1}
jojo Posté(e) le 21 mai 2015 Signaler Posté(e) le 21 mai 2015 Mon idée serait en effet de remplacer MaxTime, 1 par StopTask dans la tâche en attente, après le NotStarted,. Mais je ferai des essais ce soir Envoyé de mon Nexus 5 en utilisant Tapatalk
DeuxG Posté(e) le 22 mai 2015 Signaler Posté(e) le 22 mai 2015 Bonjour. je vais faire petit à coté de vous, mais bon, il faut bien commencer. ce week end, mes enfants ont une fois de plus laissé les lumières du couloir allumé, du coup, j'ai voulu les eteindre automatiquement après 10 minutes, mais cela ne fonctionne pas. j'ai ajouté ça au GEA : (j'ai testé deux syntaxe, mais aucunes ne fonctionnent) GEA.add({estauto,id["ECLAIRAGE_APPENTI"]},10*60,{"turnOff",id["ECLAIRAGE_APPENTI"]}) GEA.add(id["ECLAIRAGE_COULOIR"],10*60,{{"turnOff"}}) --Gestion de l'éclairage GEA.add({estauto,id["PORTE_DE_SERVICE"]}, -1, "",{{"Days","Monday,Tuesday,Thursday,Friday"},{"Time","5:30","6:30"},{"turnOn",id["ECLAIRAGE_APPENTI"]}}) la ligne du dessous ne fonctionne pas non plus. Je voulais faire allumer mon ECLAIRAGE_APPENTI si la porte de service était ouverte entre 5h30 et 6h30 les lundi, mardi, jeudi, vendredi. C'est pour ma femme.
jojo Posté(e) le 22 mai 2015 Signaler Posté(e) le 22 mai 2015 pour les 2 premières lignes, tu dois en 3° paramètre mettre le message, comme tu l'as fait pour la 3° instruction Pour la 3° instruction, tu devrais mettre id["PORTE_DE_SERVICE"] en première condition ET mettre l'ID en entête de script (regarde le Wiki -> syntaxe, c'est expliqué)
Steven Posté(e) le 22 mai 2015 Auteur Signaler Posté(e) le 22 mai 2015 Une petite rubrique spéciale @jojo est en cours de construction sur le wiki http://gea.piccand.me/doku.php/lua 1
jojo Posté(e) le 22 mai 2015 Signaler Posté(e) le 22 mai 2015 trop puissant cette section ! J'ai encore BEAUCOUP àapprendre ...
Steven Posté(e) le 22 mai 2015 Auteur Signaler Posté(e) le 22 mai 2015 Je crée cela justement parce qu'il y a des gens comme toi en soif d'apprendre Attention, je me plante souvent et il y a aussi des scripts que je crée et une fois terminé .. je ne les utilise pas donc ils sont plus une base de travail qu'une bible
jojo Posté(e) le 22 mai 2015 Signaler Posté(e) le 22 mai 2015 en attendant la correction, j'essayerais avec {“StopTaskâ€, <id_tâche>} qui devrait pouvoir remplater un {"MaxTime", 1} GEA est vraiment trop puissant : il y a un bug, mais il y a moyen de le contourner pour quand même faire fonctionner le bazar ! Donc ce que je voulais : si la lumière de la SdB est allumée pendant 1 min (et Alarme éteinte, et variable ECS = Non) que ECS passe à Oui pendant 20 min si ECS a été mis à Oui autrement que par la lumière de la SdB, alors ECS ne passe PAS à Non au bout des 20 min. le code "normal" aurait été : -- Mettre ECS à oui pendant 20 min -- Tache en sommeil (NotStarted) -- Cette tache va passer la variable à Non si elle est à Oui depuis plus de 20 minutes local autoECSNon = GEA.add (estECS, 20*60, "Variable ECS à OUI depuis #durationfull# => variable ECS = NON", {{"VirtualDevice", DeviceID["VAR_ECS"], 4}, {"Email", UserID["Vincent"], "INFO - ECS"}, {"NotStarted"}, {"MaxTime", 1}}) -- Cette tache va passer la variable à Oui si la lumière de la douche est allumée depuis 1 min et que la variable ECS est à non -- Elle va aussi redémarrer la tache si dessus GEA.add ({DeviceID["ALARME_ACTIVE"], DeviceID["LUM_SDBREZ_DOUCHE"], pasECS}, 1*60, "Variable ECS à OUI car LUM_SDBREZ_DOUCHE allumée depuis #duration#.",{{"Inverse"}, {"VirtualDevice", DeviceID["VAR_ECS"], 3}, {"Email", UserID["Vincent"], "INFO - ECS"}, {"RestartTask", autoECSNon}}) mais suite au bug de MaxTime, il faut mettre ceci : -- Mettre ECS à oui pendant 20 min -- Tache en sommeil (NotStarted) -- Cette tache va passer la variable à Non si elle est à Oui depuis plus de 20 minutes local autoECSNon = GEA.add (estECS, 1, "Variable ECS à OUI depuis #durationfull# => variable ECS = NON", {{"VirtualDevice", DeviceID["VAR_ECS"], 4}, {"Email", UserID["Vincent"], "INFO - ECS"}, {"NotStarted"}}) -- Cette tache va passer la variable à Oui si la lumière de la douche est allumée depuis 1 min et que la variable ECS est à non -- Elle va aussi redémarrer la tache si dessus GEA.add ({DeviceID["ALARME_ACTIVE"], DeviceID["LUM_SDBREZ_DOUCHE"], pasECS}, 1*60, "Variable ECS à OUI car LUM_SDBREZ_DOUCHE allumée depuis #duration#.",{{"Inverse"}, {"VirtualDevice", DeviceID["VAR_ECS"], 3}, {"Email", UserID["Vincent"], "INFO - ECS"}, {"RestartTask", autoECSNon}}) GEA.add (estECS, 1, "", {{"StopTask", autoECSNon}}) => supprimer le "MaxTime" et rajouter la dernière ligne. En fait j'ai exploité l'aspect séquentiel de GEA : ECS passe à Oui via la lumière, alors il redémarre la tâche d'extinction automatique, et donc ligne suivante ne s'exécutera pas 1
971jmd Posté(e) le 23 mai 2015 Signaler Posté(e) le 23 mai 2015 bonjour a tous j'ai parcouru le poste GEA à la recherche d'une méthode pour activer et d'activer une alarme. en gros je recherche comment activer et désactivé une zone. et aussi comment armer et désarmé un détecteur merci pour votre aide
Sakkhho Posté(e) le 23 mai 2015 Signaler Posté(e) le 23 mai 2015 Regarde dans le showroom Gea tu as pleins d exemple dont le mien.
DeuxG Posté(e) le 23 mai 2015 Signaler Posté(e) le 23 mai 2015 Merci pour les infos, une fois de plus, j'avais fais une erreur de syntaxe.... ça va rentrer, je vais potasser le wiki.
971jmd Posté(e) le 23 mai 2015 Signaler Posté(e) le 23 mai 2015 @ Skkhho Merci J'ai trouver : {"Armed"} -- Ne vérifie QUE si le module est armé {"Disarmed"} -- Ne vérifie QUE si le module est désarmé {"setArmed", <id>} -- arme le module <id> {"setDisarmed", <id>} -- desarme le module <id> mai pas pour activer ou désactive une zone
jojo Posté(e) le 23 mai 2015 Signaler Posté(e) le 23 mai 2015 en fait quand on met l'alarme en route, cela revient àmettre les devices indépendemment en route. Je ne sais pas ce que tu veux dire par zone ? (= pièce ?) => donc tu dois armer un àun les devices que tu veux armer
971jmd Posté(e) le 23 mai 2015 Signaler Posté(e) le 23 mai 2015 Haaaa ok, effectivement Si j'ai 2 détecteur dans la cuisine il suffi de les désactivé ou activée c'est = a zone cuisine. Merci Pourquoi faire compliqué quand on peut faire simple Envoyé de mon iPhone en utilisant Tapatalk
pepite Posté(e) le 26 mai 2015 Signaler Posté(e) le 26 mai 2015 superbe la sectin LUA steven, merciiiii ;-) 1
Cardane Posté(e) le 27 mai 2015 Signaler Posté(e) le 27 mai 2015 Bonjour à tous, Je viens enfin de me mettre à GEA, avec déjà quelques petites réalisation sympas. mais je bloque sur un truc tout bête... j'essaie de démarrer mon Sonos à une heure bien précise, et pour ca, j'ai trouvé la ligne GEA sans sans problème en utilisant l'option "VirtualDevice" et puis l'ID du bouton PLAY. Par contre, comme le volume peut avoir été changé, j'aimerais le mettre à 80, mais je ne trouve pas comment faire pour positionner un slider à une valeur précise. (En fait j'utilise le VD de Jean-Christophe). merci de votre aide
jojo Posté(e) le 27 mai 2015 Signaler Posté(e) le 27 mai 2015 as-tu essayé ceci dans les options ? {“Sliderâ€, <id_module>, <id_slider>, <valeur>} Met la valeur dans le slider du module {“Sliderâ€, 19, 1, 21.3} 1
Cardane Posté(e) le 27 mai 2015 Signaler Posté(e) le 27 mai 2015 @jojo oui, effectivement, ca marche... j'avais essayé avant mais avec le mauvais id du slider..... je crois qu'il est temps d'aller me coucher :-)
971jmd Posté(e) le 29 mai 2015 Signaler Posté(e) le 29 mai 2015 bonjour à tous j'ai un petit souci mai je pense que je suis pas loin. 1- la détection s’effectue si la variable DETECTION est à 1 si 0 pas de détection 2- et le temps d'extinction varie selon la variable TEMPS ( 5,10,15)mm exemple : si variable a 10 ma lampe s'éteint dans 10mm mai ça ne fonctionne pas local lampetimer = GEA.add( true , 5*60, "5mm", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}, {"If",{{"Global", "temps", "5"}}}}) local lampetimer = GEA.add( true , 10*60, "10mm", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}, {"If",{{"Global", "temps", "10"}}}}) local lampetimer = GEA.add( true , 15*60, "15mm", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}, {"If",{{"Global", "temps", "15"}}}}) GEA.add(id["detecteur"], {"Global", "detection", "1"}, -1, "detection", {{"RestartTask", lampetimer}, {"turnOn",id["LAMPE_CHAMBRE_AMELIA"]}})
971jmd Posté(e) le 29 mai 2015 Signaler Posté(e) le 29 mai 2015 impossible de réaliser le code suivant sous GEA sous HC2 4.045 GEA exécute le code plusieur fois : quand j'allume ma lampe je reçois plusieur fois "ON TV" local tempotv = {"Function", function() fibaro:sleep(3500) end} local tempotv2 = {"Function", function() fibaro:sleep(5000) end} GEA.add({"power+", id["LAMPE"], 20}, -1, "ON TV", {{"turnOn", id["LAMPE_SALON"]}, tempotv, {"VirtualDevice", id["TV_SONY"], "4"}, tempotv, {"VirtualDevice", id["TV_SONY"], "5"}, tempotv, {"VirtualDevice", id["TV_SONY"], "8"}, tempotv2, {"VirtualDevice", id["TV_SONY"], "2"}})
jojo Posté(e) le 29 mai 2015 Signaler Posté(e) le 29 mai 2015 pour ta 1° question : j'écrirais les conditions de temps de la manière suivante, SANS if dans les option : ça c'est plus un principe de base (pas de if dans les options, c'est pas logique, pas beau et ne sera bientôt plus supporté) local lampetimer = GEA.add( {"Global", "temps", "5"} , 5*60, "5mm", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}, }) pour ton scénario de lampes, je ferais comme ceci (sans oublier de mettre id["detecteur"] dans les déclencheurs de scène) GEA.add(id["detecteur"], -1, "detection", {{"turnOn",id["LAMPE_CHAMBRE_AMELIA"]}}) local GEA.add( {id["LAMPE_CHAMBRE_AMELIA"], {"Global", "temps", "5"}} , 5*60, "#duration#", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}}) local GEA.add( {id["LAMPE_CHAMBRE_AMELIA"], {"Global", "temps", "10"}} , 10*60, "#duration#", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}}) local GEA.add( {id["LAMPE_CHAMBRE_AMELIA"], {"Global", "temps", "15"}} , 15*60, "#duration#", {{"turnOff", id["LAMPE_CHAMBRE_AMELIA"]}})
jojo Posté(e) le 29 mai 2015 Signaler Posté(e) le 29 mai 2015 pour ton scénario TV, chaque fois que la consommation de ta id["LAMPE"] est modifiée (et tant que > 20), le scénario GEA va s'exécuter ? Donc si la lampe a une consommation qui varie entre 20 et 25, le scénario risque de s'exécuter plusieurs fois. Ou le scénario ne s'exécute que quand on franchi le seuil de 20 ? => àtester avec un scénario simple
Messages recommandés