Na chwilę obecną obsługuję połączenie urządzeń z tematu do sterowania roletą, oddzielnie w każdym pomieszczeniu. W każdym z nich znajduje się sterownik do ogrzewania jak i przynajmniej jedna roleta. Wszystko na chwilę obecną działa na scenach ale mając chwilkę chciałbym to bardziej "skomplikować" i przenieść do LUA. Jak w LUA wywoływać funkcję function QuickApp:onInit() - co zadany czas (minutę, sekundy)?
Nie będzie ona wywoływane żadnym zdarzeniem. Jej zadaniem jest tylko odczytanie temperatury ze sterowników co zadany czas i na podstawie tej wartości ustawienie poziomu rolety.
Widzę, że nikt nie odpowiada więc ja podpowiem :-) Panie Marcinie odeślę pana do filmu DIY, który to zagadnienie omawia i podam kod poniżej.-): https://www.portal.ztechnikazapanbrat.pl/filmpagescollection/570?pgid=kg698q8i-e19243_c3ec7ffe49a144dd834301e494a649bd 576_Roller Shutter 2 - Quick App i Lua cz.2 (Konstrukcje czasowe setTimeout do automatycznego zamykania rolet) Jak sama nazwa filmu wskazuje musi pan wykorzystać funkcję setTimeout() i wywoływać ją w co pewien czas w pętli.
function QuickApp:onInit()
self:timeFunction() --first time call a special function
end
function QuickApp:timeFunction())
fibaro.setTimeout(1000 * 120,
function()
-- code here ..........
self:timeFunction() --call yourself !!!
end
) --setTimeout to execute with delay of 2 minutes
end