971jmd Posté(e) le 21 avril 2018 Signaler Posté(e) le 21 avril 2018 salut essaye comme ça GEA.add({ {"Global", "Meteo", "Dégagé"},{"Time", "Sunset-21", "Sunrise+31"}}, 30, "Dégagé", {"Global", "Lum_Auto", "on"}) laisse ta scène LUA METEO en fonction 1
971jmd Posté(e) le 21 avril 2018 Signaler Posté(e) le 21 avril 2018 (modifié) et crée une variable METEO Aiii je vient de me rendre compte que ta scene LUA utilise un variable local Modifié le 21 avril 2018 par 971jmd
971jmd Posté(e) le 21 avril 2018 Signaler Posté(e) le 21 avril 2018 mai comme ça ta scène METEO doit changer d’état automatiquement et mettre a jour ta Variable METEO --[[ %% properties %% weather WeatherCondition %% events %% globals --]] local startSource = fibaro:getSourceTrigger(); local meteo = fibaro:getGlobalValue("Meteo") if ( api.get('/weather')['WeatherCondition'] == "clear" ) then fibaro:setGlobal("Meteo", "Dégagé"); --Dégagé elseif ( api.get('/weather')['WeatherCondition'] == "cloudy" ) then fibaro:setGlobal("Meteo", "Nuageux");--Nuageux elseif ( api.get('/weather')['WeatherCondition'] == "rain" ) then fibaro:setGlobal("Meteo", "Pluie"); --Pluie elseif ( api.get('/weather')['WeatherCondition'] == "snow" ) then fibaro:setGlobal("Meteo", "Neige"); --Neige elseif ( api.get('/weather')['WeatherCondition'] == "storm" ) then fibaro:setGlobal("Meteo", "Tempête");--Tempête elseif ( api.get('/weather')['WeatherCondition'] == "fog" ) then fibaro:setGlobal("Meteo", "Brouillard"); --Brouillard end
pepite Posté(e) le 21 avril 2018 Signaler Posté(e) le 21 avril 2018 @Fredric Bizarre ;-) tu peux essayer cela pour vérifier ce que GEA te renvoie ? stp GEA.add({"Weather!", ""}, 30, "Le temps est {Result}") 1
Fredric Posté(e) le 22 avril 2018 Signaler Posté(e) le 22 avril 2018 Il y a 17 heures, 971jmd a dit : salut essaye comme ça GEA.add({ {"Global", "Meteo", "Dégagé"},{"Time", "Sunset-21", "Sunrise+31"}}, 30, "Dégagé", {"Global", "Lum_Auto", "on"}) laisse ta scène LUA METEO en fonction oui, je sais que je peux faire comme ceci mais je trouve dommage de rajouter une variable alors que GEA le gère. Même mieux, je pourrais utiliser le résultat du VD "Prévision Météo" que j'ai installé depuis longtemps (je ne me rappel plus de qui il est).
Fredric Posté(e) le 22 avril 2018 Signaler Posté(e) le 22 avril 2018 Il y a 14 heures, pepite a dit : @Fredric Bizarre ;-) tu peux essayer cela pour vérifier ce que GEA te renvoie ? stp GEA.add({"Weather!", ""}, 30, "Le temps est {Result}") je test cela, pour le moment, il me dit "cloudy", ce qui est le cas je l'ai mis toutes les heures pour voir 1
Fredric Posté(e) le 22 avril 2018 Signaler Posté(e) le 22 avril 2018 Voila le résultat, il ne m'a indiqué que 2 fois le temps, j'ai mis une intervalle de 1 heure, il me la signalé à 12h28, ensuite a 13h29 puis plus rien...
pepite Posté(e) le 22 avril 2018 Signaler Posté(e) le 22 avril 2018 T avais mis un "Repeat" ? Ton GEA râte des lignes régulièrement ? 1
Dragoniacs Posté(e) le 23 avril 2018 Signaler Posté(e) le 23 avril 2018 Bonjour, Je cherche à avoir une alerte lorsqu'une fenêtre reste ouverte trop longtemps. J'ai mis cette ligne dans GEA, et elle fonctionne bien : un push toute les 10min GEA.add({"Or",{id["FEN_NOLAN"],id["VELUX_NOLAN"],id["VELUX_ETHAN"],id["VELUX_SDB"]}}, 10*60, "Une fenêtre du 2e est ouverte depuis #duration#", {{"Repeat"}}) Par contre, je ne sais pas quelle fenêtre est associée à #duration#. J'ai tenté #trigger# et #rooms", mais ça ne me retourne rien du tout.... Une idée ?
Steven Posté(e) le 23 avril 2018 Auteur Signaler Posté(e) le 23 avril 2018 Je serais curieux de savoir ce que te retour #name# A mon avis, et sans avoir testé, cela ne fonctionne pas avec un "Or", le développeur de GEA n'y a pas pensé. Je pense qu'il mérite un blâme.
pepite Posté(e) le 23 avril 2018 Signaler Posté(e) le 23 avril 2018 Un scandale, et le type qui lui a suggéré plein de betises n'y a pas pensé non plus ;-) 1
Dragoniacs Posté(e) le 23 avril 2018 Signaler Posté(e) le 23 avril 2018 Ne vous battez pas Quel que soit le #....#, GEA retourne un espace vide.
Steven Posté(e) le 23 avril 2018 Auteur Signaler Posté(e) le 23 avril 2018 Je vais donc te mettre à contribution si tu as le temps. Pourrais-tu ajouter la ligne indiquée par -- CETTE LIGNE-- dans ton code et tester le #name# s'il te plait. o_r = {name="Or", optimize = true, keepValues = true, -- CETTE LIGNE --- getName=function(...) local args = {...} local name = "" for i = 1, #args do if (GEA.getOption(args[i]).check()) then name .. GEA.getOption(args[i]).getModuleName() .. " " end end return name end, -- FIN --- control=function(...) local args = {...} for i = 1, #args do if (type(GEA.getOption(args[i]))=="nil") then return false end end return true end, getValue=function(...) local args = {...} for i = 1, #args do if (GEA.getOption(args[i]).check()) then return true end end return false end, }, 1
Fredric Posté(e) le 23 avril 2018 Signaler Posté(e) le 23 avril 2018 Il y a 23 heures, pepite a dit : T avais mis un "Repeat" ? Ton GEA râte des lignes régulièrement ? non, je n'avais pas mis de "Repeat" et non, toutes mes lignes s’exécutent bien pour le moment, toujours "cloudy", normal, le temps est "cloudy"
Dragoniacs Posté(e) le 23 avril 2018 Signaler Posté(e) le 23 avril 2018 Il y a 4 heures, Steven a dit : Je vais donc te mettre à contribution si tu as le temps. Pourrais-tu ajouter la ligne indiquée par -- CETTE LIGNE-- dans ton code et tester le #name# s'il te plait. o_r = {name="Or", optimize = true, keepValues = true, -- CETTE LIGNE --- getName=function(...) local args = {...} local name = "" for i = 1, #args do if (GEA.getOption(args[i]).check()) then name .. GEA.getOption(args[i]).getModuleName() .. " " end end return name end, -- FIN --- control=function(...) local args = {...} for i = 1, #args do if (type(GEA.getOption(args[i]))=="nil") then return false end end return true end, getValue=function(...) local args = {...} for i = 1, #args do if (GEA.getOption(args[i]).check()) then return true end end return false end, }, Y a un soucis de syntaxe : [DEBUG] 21:35:31: [1;31m2018-04-23 21:35:31.472647 [ fatal] Unknown exception: /opt/fibaro/scenes/597.lua:859: syntax error near '..'
Kristiano Posté(e) le 24 avril 2018 Signaler Posté(e) le 24 avril 2018 Le 2018-04-12 à 09:29, pepite a dit : Hello, @flechg It works for me in 6.07, 39 and 46 are motion detectors Can you check if you have in your variable panel, the variable called @Kristiano I inderstand, i will see the property "secured". @nugget So this will be part of next version? Since id like to trigger both for "value" and "secured" by my door. - Secure will control the alarm behind the door - Value will just be used if the door was keept open for a long time Thanks!
pepite Posté(e) le 24 avril 2018 Signaler Posté(e) le 24 avril 2018 @Dragoniacs Essaie cela, sans certitude ;-) Mets ceci dans config() : GEA.options.o_r = {name="Or", optimize = true, keepValues = true, -- CETTE LIGNE --- getName=function(...) local args = {...} local name = "" for i = 1, #args do if (GEA.getOption(args[i]).check()) then name .. GEA.getOption(args[i]).getModuleName() end end return name end, -- FIN --- control=function(...) local args = {...} for i = 1, #args do if (type(GEA.getOption(args[i]))=="nil") then return false end end return true end, getValue=function(...) local args = {...} for i = 1, #args do if (GEA.getOption(args[i]).check()) then return true end end return false end, }
pepite Posté(e) le 24 avril 2018 Signaler Posté(e) le 24 avril 2018 @Kristiano Sorry I don't do anything yet. As soon as possible. And i ask you to test.
Dragoniacs Posté(e) le 24 avril 2018 Signaler Posté(e) le 24 avril 2018 @pepite Même erreur que lorsque j'ai essayé dans le reste du code : [DEBUG] 12:00:47: [1;31m2018-04-24 12:00:47.959176 [ fatal] Unknown exception: /opt/fibaro/scenes/597.lua:53: syntax error near '..'
pepite Posté(e) le 24 avril 2018 Signaler Posté(e) le 24 avril 2018 @Dragoniacs ah zut, je remets ca ;-) @Kristiano, could you put this in config() please : GEA.options.doorlock = {name="DoorLock", optimize = true, depends = {"property"}, control=function(id) return GEA.options.number.control(id) end, getValue=function(id, property) if (not id) then id = GEA.currentMainId end GEA.options.property.getValue(id, property) end, action=function(id, value) if (not id) then id = GEA.currentMainId end if (type(id) ~= "table") then id = {id} end for i=1, #id do if value == tools.tostring("secure") then fibaro:call(id[i],"secure") else fibaro:call(id[i],"unsecure") end end end }, And test this line : GEA.add( {"DoorLock", "Value"}, -1, "The door is : {Result}") GEA.add( {"DoorLock", 506, "Value"}, -1, "The door is : {Result}") GEA.add( {"DoorLock", "Secured"}, -1, "The door is : {Result}") GEA.add( {"DoorLock",506, "Secured"}, -1, "The door is : {Result}")
Kristiano Posté(e) le 25 avril 2018 Signaler Posté(e) le 25 avril 2018 Le 2018-04-24 à 13:39, pepite a dit : @Dragoniacs ah zut, je remets ca ;-) @Kristiano, could you put this in config() please : GEA.options.doorlock = {name="DoorLock", optimize = true, depends = {"property"}, control=function(id) return GEA.options.number.control(id) end, getValue=function(id, property) if (not id) then id = GEA.currentMainId end GEA.options.property.getValue(id, property) end, action=function(id, value) if (not id) then id = GEA.currentMainId end if (type(id) ~= "table") then id = {id} end for i=1, #id do if value == tools.tostring("secure") then fibaro:call(id[i],"secure") else fibaro:call(id[i],"unsecure") end end end }, And test this line : GEA.add( {"DoorLock", "Value"}, -1, "The door is : {Result}") GEA.add( {"DoorLock", 506, "Value"}, -1, "The door is : {Result}") GEA.add( {"DoorLock", "Secured"}, -1, "The door is : {Result}") GEA.add( {"DoorLock",506, "Secured"}, -1, "The door is : {Result}") I suppose I should add an instant trigger for both 506 value and 506 secured?
Dragoniacs Posté(e) le 27 avril 2018 Signaler Posté(e) le 27 avril 2018 @pepite as-tu trouvé ce qui cloche dans la syntaxe du OR ?
Nico Posté(e) le 29 avril 2018 Signaler Posté(e) le 29 avril 2018 Steven, Pepite, bon, j'ai testé dans tous les sens, il ne veut pas, je ne pige pas pourquoi. Vais peut être remettre GEA 5 du coup. Pour tester, j'aimerai changer le trigger, et prendre le bouton de mon VD qui est appuyer par la Zibase, possible ?
pepite Posté(e) le 30 avril 2018 Signaler Posté(e) le 30 avril 2018 Alors, la je ne comprends pas. @Steven certainement, mais très occupé en ce moment. Le bouton d'un VD en trigger dasn GEA..heuu. J'ai cru voir passer un post dans lequel j'avais répondu concernant le fait de pouvoir récuperer l'appui sur un bouton d'un VD, je crois que c'est @MAM78 qui avait posé la question, je ne me souviens plus de la solution trouvée. A voir ce qu'on peut faire dans GEA. Dans ton bouton qu'y a-t-il ? un changement de Label ou autre qu'on pourrait récupérer depuis GEA ? @Dragoniacs heuuu non :-(
pepite Posté(e) le 30 avril 2018 Signaler Posté(e) le 30 avril 2018 @Dragoniacs Essaie ceci ;-) GEA.options.o_r = {name="Or", optimize = true, keepValues = true, -- CETTE LIGNE --- getName=function(...) local args = {...} local name = "" for i = 1, #args do if (GEA.getOption(args[i]).check()) then name = GEA.getOption(args[i]).getModuleName() .. " " end end return name end, -- FIN --- control=function(...) local args = {...} for i = 1, #args do if (type(GEA.getOption(args[i]))=="nil") then return false end end return true end, getValue=function(...) local args = {...} for i = 1, #args do if (GEA.getOption(args[i]).check()) then return true end end return false end, }
Messages recommandés