pepite Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @joesab, je dois pas etre bien reveille, je comprends pas bein ce que tu souhaites faire ;-) et sinon, tes conditions en debut de ligne ;-)
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Joesab tel un vampire ferme ses volets au lever du jour pour les ouvrir au coucher du soleil 2
971jmd Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @Hansolo au top Tu ne manque pas une Envoyé de mon iPhone en utilisant Tapatalk
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 en conneries á défaut de l'être en LUA et GEA
joesab Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 c'est pourtant simple 1°) je veux mettre une condition (si volet déjà ouvert) et bien gea reste couché 2°) je veux mettre une borne horaire d'ouverture pour le lever du soleil, c'est à dire si le lever du soleil est à 5:00 , je ne veux pas que le volet s'ouvre avant par exemple 7:00 3°) idem pour la borne fermeture soleil... si coucher 23:00, je veux que mes volets se ferment à 22:00 et ça selon les jours travail ou chomé.... mon test de ce matin, à fait que tous les volets se sont fermés, et impossible à ouvrir... il rebaissait aussi sec !!! si dessous ce qui marche à l'heure actuelle; ouverture volet salon au lever du soleil tous les jours et les autres selon jours travail ou chomés.... --------------------OUVERTURE VOLETS DEVANT SEMAINE--------------------- --Ouverture le matin local estChome = {"If", {{"Global", "JourChome", "OUI"}}} local estTravail = {"If", {{"Global", "JourChome", "NON"}}} GEA.add(true, 1*60, "Ouverture Volet BUREAU", {estTravail,{"Time", "07:31", "07:35"},{"Open", id["VOLET_BUREAU"], 100}}) GEA.add(true, 1*60, "Ouverture Volet CHAMBRE2", {estTravail,{"Time", "07:30", "07:35"},{"Open", id["VOLET_CHAMBRE2"], 100}}) GEA.add(true, 1*60, "Ouverture Volet ENTREE", {estTravail,{"Time", "07:30", "07:35"},{"Open", id["VOLET_PORTE_ENTRE"], 100}}) --------------------------------------------------------- -----------------Ouverture volets salon lever du soleil ---------------- GEA.add(true, 1*60, "Ouverture Volet SALON", {{"Time", "Sunrise", "Sunrise-15"},{"Open", id["VOLET_SALON"], 100}}) --------------------------------------------------------- --------------------OUVERTURE VOLETS DEVANT we et feries--------------------- --Ouverture le matin local estChome = {"If", {{"Global", "JourChome", "OUI"}}} local estTravail = {"If", {{"Global", "JourChome", "NON"}}} GEA.add(true, 1*60, "Ouverture Volet BUREAU", {estChome,{"Time", "08:30", "08:35"},{"Open", id["VOLET_BUREAU"], 100}}) GEA.add(true, 1*60, "Ouverture Volet CHAMBRE2", {estChome,{"Time", "08:30", "08:35"},{"Open", id["VOLET_CHAMBRE2"], 100}}) GEA.add(true, 1*60, "Ouverture Volet ENTREE", {estChome,{"Time", "08:00", "08:035"},{"Open", id["VOLET_PORTE_ENTRE"], 100}}) --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}}) -------------Fermeture du volet du salon-------------------------- GEA.add(true, 1*60, "fermeture volet salon", {{"Time", "Sunset+45", "Sunset+50"}, {"Close",id["VOLET_SALON"],100}}) -------------------- merci
PITP2 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 et bien c'est l'ébullition sur le support GEA aujourd'hui Merci pour votre aide j'ai essayé le code de Steven 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"}}) et donc cela fonctionne mais j'avais déjà utilisé cette condition {id["CP_SALON"], {"Global", "GEA_heure", "0"} et je l'avais abandonné car lorsque la variable GEA_heure change d'état et bien la diffusion du message est effectuée. Ceci est normal vu qu'il y a un -1 il faudrait que j'arrive à faire un ({id["CP_SALON"], -1} ET {"Global", "GEA_heure", "0"} comme condition. Mais je ne sais pas comment faire @pepite, le code que tu m'as donné ne donne pas satisfaction dommage @hansolo, j'ai une autre expression vieux motard que jamais
amonthet Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 Ca ne fonctionne pas maintenant j'ai l'erreur: [ERROR] 19:07:39: line 194: ')' expected near '}' Si je mets une parenthèse (même en faisant des essais partout où c'est possible) j'ai toujours ce message
Fredric Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 -- 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"}}) @Steven, la lignes "les deux fenetre sont fermées provotre cette erreur: [ERROR] 19:09:37: line 444: attempt to compare number with nil cette ligne à l'air pourtant d'avoir la bonne syntaxe?
Fredric Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 Ca ne fonctionne pas maintenant j'ai l'erreur: [ERROR] 19:07:39: line 194: ')' expected near '}' Si je mets une parenthèse (même en faisant des essais partout où c'est possible) j'ai toujours ce message GEA.add({"Global+", "T_Salon", 20}, 10*60, "", {{"Value", id["Chauff_SALON", 20]},{"Time","23:00","06:00"}}) je pense qu'il te manqué les guillemets autour du "value" et a l’envers non?
HANSOLO Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 Essaye GEA.add({{"Value",id["Windows_SMG"],"0"}, {"Value",id["Windows_SMD"],"0"}}, 30, "", {{"VirtualDevice", id["Mod_Chauf_SM"], "4"}, {"Global", "Windows5", "Fermes"}})
Sakkhho Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @steven, tu peux m'expliquer ta syntaxe ici, car je ne comprends pas comment ca peut me notifier correctement http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?p=61627 merci
Fredric Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 (modifié) Essaye GEA.add({{"Value",id["Windows_SMG"],"0"}, {"Value",id["Windows_SMD"],"0"}}, 30, "", {{"VirtualDevice", id["Mod_Chauf_SM"], "4"}, {"Global", "Windows5", "Fermes"}}) Merci @HANSOLO, ça avance, mais j'arrive au même résultat qui me bloquait hier, seul la première "Value" est pris en compte pour la fermeture. la commande ne prends pas en compte la fermeture du deuxième. j'ai fais une scène pour la fermeture en attendent mais c'est dommage... --[[ %% autostart %% properties 170 value 265 value %% globals --]] local startSource = fibaro:getSourceTrigger(); if ( tonumber(fibaro:getValue(170, "value")) == 0 ) and ( tonumber(fibaro:getValue(265, "value")) == 0 ) then fibaro:sleep(180*1000); fibaro:call(372, "pressButton", "3"); fibaro:setGlobal("Windows5", "Fermes"); end Modifié le 23 mars 2015 par Fredric
PITP2 Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @amonteht, peux tu reposter la ligne qui pose problème stp ?
pepite Posté(e) le 23 mars 2015 Signaler Posté(e) le 23 mars 2015 @PITP2 : et si tu l'ecrivais en 2 lignes ? @frederic , t'es sur de test entetes et tes ID ? tout est declaré ? quelle version de GEA ? Essaie comme ca pour voir : je pense qu'il n'y a pas de guillemet pour le value ;-) local SMG = {"Value",id["Windows_SMG"],0} local SMD = {"Value",id["Windows_SMD"],0} GEA.add({SMG, SMD}, 30, "", {{"VirtualDevice", id["Mod_Chauf_SM"], "4"}, {"Global", "Windows5", "Fermes"}})
Fredric Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 @pepite , pour le coup, je suis plus sur de rien, mais je pense que oui, car si j'inverse SMG avec SMD, c'est celui qui est en premier qui fonctionne. --[[ %% autostart %% properties 118 value 210 value 254 value 271 value 54 value 312 value 97 value 32 value 268 value 269 value 111 value 170 value 265 value 114 value 267 value %% globals delestage Windows5 AlarmeGenerale NetModTempInt --]] SMG = 170, SMD = 265 GEA.add({{"Global-", "NetModTempInt", 17},{"Global","AlarmeGenerale","Inactive"}}, 30*60, "Il fait froid dans la chambre de Marion #value# à #time#",{{"Repeat"}}) en fait, je remarque que ce sont les lignes avec condition qui me posent soucis, cette ligne non plus ne fonctionne pas, seul la première condition est prise en compte. Là , si la varialbe "NetModTempInt" passe en dessous de 17°, je reçois le puch même si la variable "AlarmeGenerale" est Active, si j'inverse les variable dans la ligne, je reçois le push dés que "AlarmeGenerale" est Inactive. même si la température est sur 21°. je vais essayer tes lignes ce soir, merci.
pepite Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 Ton entete a l'air OK, on retrouve bien SMG et SMD ;-) Effectivement, tu as bien l'air d'avoir des soucis avec tes conditions multiples. Tu as quelle version de GEA ? Je pense que mes lignes ne vont rien changer, puisque tu n'as pas de conditions multiples, mais on ne sait jamais ;-)
pepite Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 tu as quoi dans ton debug ? je me demande si tu n'as pas souleve un petit bug, je viens de tester et mon debug n'est pas mis à jour avec les 2 conditions, mais juste une, je ne sais pas si c'est le comportement normal du debug. Attendons les experts ;-)
amonthet Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 @PITP2 Voici la ligne: GEA.add ({"Global-", "T_Salon", 18}, 10*60, "", {{"Value", 20}, id["Chauff_SALON"]},{"Time","07:00","16:00"}}) J'ai l'erreur: [ERROR] 13:43:56: line 196: ')' expected near '}' En fait j'ai une accolade en trop à la fin je pense... si je l'enlève j'ai le message [ERROR] 13:50:51: line 449: attempt to index field '?' (a number value)
HANSOLO Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 Essaye plutôt GEA.add ({"Global-", "T_Salon", 18}, 10*60, "", {{"Value", id["Chauff_SALON"], 20},{"Time","07:00","16:00"}})
Steven Posté(e) le 24 mars 2015 Auteur Signaler Posté(e) le 24 mars 2015 Des fois, je me demande pourquoi je perds mon temps : http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?p=61938
HANSOLO Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 La base de la formation c'est répéter, répéter, répéter, répéter, répéter mais sans péter 1
Sebbrunie1 Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 Alors c'est uniquement pour rigoler car cela ne va pas du tout fonctionner Voici le même code mais qui "devrait" fonctionner local DistanceMaison1 = {"Function", function() return math.floor(fibaro:calculateDistance(userLocation, EmplacementMaison1)*100)/100 end} local DistanceBureau1 = {"Function", function() return math.floor(fibaro:calculateDistance(userLocation, EmplacementBureau1)*100)/100 end} local DistanceCarantec1 = {"Function", function() return math.floor(fibaro:calculateDistance(userLocation, EmplacementCarantec1)*100)/100 end} local DistanceEternoz1 = {"Function", function() return math.floor(fibaro:calculateDistance(userLocation, EmplacementEternoz1)*100)/100 end} GEA.add(DistanceBureau1, 30, "", {{"Global", "DistanceBureau", "#value#"}, {"Label", id["DISTANCE"], "Label2", "#value# m"}}) GEA.add(DistanceMaison1, 30, "", {{"Global", "DistanceMaison", "#value#"}, {"Label", id["DISTANCE"], "Label1", "#value# m"}}) GEA.add(DistanceCarantec1, 30, "", {{"Global", "DistanceCarantec", "#value#"}, {"Label", id["DISTANCE"], "Label3", "#value# m"}}) GEA.add(DistanceEternoz1, 30, "", {{"Global", "DistanceEternoz", "#value#"}, {"Label", id["DISTANCE"], "Label4", "#value# m"}}) -- message maison GEA.add({"Global-", "DistanceMaison", "100"}, 30, "Je suis à moins de #value# m à #time# de la maison", {{"MaxTime", "1"}}) GEA.add ( CONDITION, durée, message, ACTIONS ) Lors que GEA vérifie les CONDITIONs, il stock le résultat de la condition dans une variable #value# qu'on peut repassée dans les labels et globals des ACTIONS. Et donc s'il me retourne #value# dans Global, c'est que le calcul de la distance ne se fait pas? Est ce que le calcul ne se fait pas, par ce que jes coordonées geo sont prises comme du texte et non comme du chiffre? Merci d'avance J'espère que j’embête pas tout le forum avec mon problème de distance...
pepite Posté(e) le 24 mars 2015 Signaler Posté(e) le 24 mars 2015 @steven : oops je crois qu'il n'avait vraiment pas bien lu ;-) oui hansolo a raison et nous nous essayons de t'eviter de repeter en repetant àta place..enfin pour moi dans la limite de ce que j'ai compris ;-)
Steven Posté(e) le 24 mars 2015 Auteur Signaler Posté(e) le 24 mars 2015 Tu n'embêtes pas, ce qui m'embête c'est de prendre la peine et le temps de répondre à des gens qui, eux, ne prennent pas le peine de lire la réponse Garce à ta re-re-demande , J'ai vu un soucis : Prenons un exemple : local DistanceEternoz1 = {"Function", function() return math.floor(fibaro:calculateDistance(userLocation, EmplacementEternoz1)*100)/100 end} Le soucis est que ta fonction retourne un nombre alors que function doit retourné en 1ER un booléen (vrai ou faux) puis la valeur. Donc dans ton cas, il faudra faire cela : local DistanceEternoz1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(userLocation, EmplacementEternoz1)*100)/100 end} un petit true, en plus et cela devrait (je l'espère) résoudre ton soucis. Je te laisse le mettre sur toutes tes lignes, re-tester et nous tenir au courant.
Messages recommandés