yoim 51 Signaler ce message Posté(e) 27 janvier 2020 Qq un connaitrait le code Lua pour eteindre et allumer une piece ? Merci. Partager ce message Lien à poster Partager sur d’autres sites
jjacques68 600 Signaler ce message Posté(e) 28 janvier 2020 comme ça à froid... je dirais, tu fais une scène, que tu peux démarrer quand tu veux, avec un passage d’arguments, qui selon ce dernier, va tout allumer ou tout éteindre... Mais une commande unique qui fait ça, je sais pas si ça existe. Partager ce message Lien à poster Partager sur d’autres sites
yoim 51 Signaler ce message Posté(e) 28 janvier 2020 Ah ok Sinon j'allais mettre tout mes modules de ma piece dans une scene ... mais bon vu que sur le dashboard j'ai une option pour éteindre une piece precise, je pensais que en Lua on aurait une commande. Partager ce message Lien à poster Partager sur d’autres sites
Lazer 8 471 Signaler ce message Posté(e) 28 janvier 2020 Je viens de regarder la page Web dont tu parles, et il fait autant de turnOn ou TurnOff qu'il y a de lumières dans la pièce. Donc il n'y a pas d'API directe, il faut que tu crées une boucle qui identifie tous les modules de type light de ta pièce, puis réalise l'action désirée pour chacun. Partager ce message Lien à poster Partager sur d’autres sites
yoim 51 Signaler ce message Posté(e) 28 janvier 2020 ok je comprends. Merci Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 29 janvier 2020 Bonjour bonjour, Passage un peu tardif ;-) Voila ce qui est fait das GEA si ca peut t'aider En gros : - récupérer l'id de la pièce (ici room.id) - boucler sur toutes les lumieres de la pièce et action souhaitée sur chacune d'entre elles Comme te l'a précisé @Lazer local rooms = api.get("/rooms") for _, room in pairs(rooms) do if (room.name:lower() == roomName:lower()) then for _, device in pairs(api.get("/devices?type=com.fibaro.philipsHueLight&roomID="..room.id)) do fibaro:call(device.id, action) end for _, device in pairs(api.get("/devices?property=[isLight,true]&roomID="..room.id)) do fibaro:call(device.id, action) end end end 1 1 Partager ce message Lien à poster Partager sur d’autres sites
Krikroff 1 924 Signaler ce message Posté(e) 30 janvier 2020 @yoim, moi j'utiliserais bien la méthode callGroupAction local data = { enabled = true, visible = true, roomID = 1, properties = { --dead = false, -- option isLight = true }, interfaces = { "light" } } local devices = fibaro:getDevicesId(data) print(json.encode(devices)) for k,v in ipairs(devices) do print (fibaro:getRoomName(fibaro:getRoomID(v)) .. " " .. fibaro:getName(v)) end Il faut mettre l'id de ta pièce pour le roomID. Si c'est concluant dans ton debug alors il faudra juste remplacer le fibaro:getDevicesI(data) par fibaro:callGroupAction("turnOff", data) 2 1 Partager ce message Lien à poster Partager sur d’autres sites
yoim 51 Signaler ce message Posté(e) 30 janvier 2020 @Krikroff L'idée est interessante, mais ca m'eteint tout toutes les rooms et meme si ce n'est pas des lumieres. Ca vient de crier a la maison --[[ %% properties %% events %% globals --]] local data = { enabled = true, visible = true, roomID = 616, properties = { --dead = false, -- option isLight = true }, interfaces = { "light" } } --local devices = fibaro:getDevicesId(data) local devices = fibaro:callGroupAction("turnOff", data) print(json.encode(devices)) for k,v in ipairs(devices) do print (fibaro:getRoomName(fibaro:getRoomID(v)) .. " " .. fibaro:getName(v)) end Dans mon debug j'ai ca : [DEBUG] 22:11:24: [3,4,5,6,7,24,41,42,43,44,47,48,49,50,51,52,53,54,55,72,74,75,76,77,78,79,80,81,82,89,93,94,95,98,99,102,103,104,105,106,107,111,112,113,114,115,116,117,123,125,128,129,130,131,132,133,134,135,136,137,138,153,157,158,159,160,161,162,163,166,172,175,177,178,179,180,181,182,183,184,185,186,187,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,215,216,217,218,219,222,223,230,231,232,234,235,236,237,238,239,240,241,242,243,244,245,246,247,252,266,267,269,276,277,278,279,280,281,282,283,284,285,300,301,302,303,304,306,314,315,316,317,318,319,320,321,322,323,324,325,326,327,337,338,339,340,341,342,353,361,362,363,364,365,366,367,368,371,372,373,374,375,376,384,385,386,387,388,389,390,391,392,403,404,405,406,472,473,474,475,479,480,484,485,486,487,488,491,492,493,498,499,500,501,521,522,523,524,533,534,537,538,541,542,543,544,550,551,552,553,554,556,595,596,606,613,615,616,617,618,619,620,621,622,623,624,630,631,632,633,634,635,636,637,642,647,648,649,650,653,654,655,656,657,658,680,684,685,687,689,690,691,694,695,696,697,698,699,702,703,704,705,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,729,730,731,732,733,734,749,750,751,752,753,754,756,757,772,773,774,775,776,777,778,779,780,781,782,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820] [DEBUG] 22:11:24: JARDIN YR Weather [DEBUG] 22:11:24: 2020-01-30 22:11:24.615561 [ fatal] Unknown exception: /opt/fibaro/scenes/325.lua:27: attempt to concatenate a nil value Alors que quand je faisais le local devices = fibaro:getDevicesId(data) Ca me sortait bien juste mes modules de la Room. Partager ce message Lien à poster Partager sur d’autres sites
Krikroff 1 924 Signaler ce message Posté(e) 30 janvier 2020 tu es sur quelle version, la dernière stable ? Partager ce message Lien à poster Partager sur d’autres sites
yoim 51 Signaler ce message Posté(e) 30 janvier 2020 Oui 4.570 Partager ce message Lien à poster Partager sur d’autres sites
Krikroff 1 924 Signaler ce message Posté(e) 30 janvier 2020 Punaise , j’essaierai demain.Et désolé pour les hurlements ! 1 Partager ce message Lien à poster Partager sur d’autres sites
yoim 51 Signaler ce message Posté(e) 30 janvier 2020 Pas de soucis. Avec la HC2, ce sont des choses qui arrivent. 1 Partager ce message Lien à poster Partager sur d’autres sites
Krikroff 1 924 Signaler ce message Posté(e) 31 janvier 2020 Je pense que ceci devrait faire l'affaire fibaro:callGroupAction("turnOff", { args = { 1 }, filters = { { filter = "deviceID", value = fibaro:getDevicesId({ enabled = true, roomID = 616, properties = { isLight = true } }) } } }) 2 1 1 Partager ce message Lien à poster Partager sur d’autres sites
yoim 51 Signaler ce message Posté(e) 31 janvier 2020 merci beaucoup @Krikroff Your code is working 2 Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 31 janvier 2020 Sympa le callGroup :-)Envoyé de mon BND-L21 en utilisant Tapatalk 1 Partager ce message Lien à poster Partager sur d’autres sites