V tomto krátkom ale užitočnom návode si ukážeme ako pomocou jednoduchého LUA skriptu skontrolovať stav batérií v rozhraní riadiacej jednotky Fibaro Home Center 2. Skript jednoducho vytvoríme v rozhraní Fibaro po kliknutí na časť Scény -> Pridať scénu -> Pridať Scénu v LUA. Následne vložíme do časti pokročilé nižšie uvedený skript a pomenujeme si scénu napríklad Stav batérií. Spustíme scénu a následne v debugovacom okne môžeme vidieť odozvu na spustený skript a teda stav batérií.
--[[
--[[
%% properties
%% globals
--]]
local minBatteryLevel = 25
local maxID = 1000
Debug = function ( color, message )
fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span"))
end
for id = 1, maxID do
local batteryLevel = fibaro:get(id, 'batteryLevel')
if batteryLevel ~= nil
then
local name = fibaro:getName(id)
local room = fibaro:getRoomNameByDeviceID(id)
if not(room == "unassigned") then
local deviceType = fibaro:getType(id)
if(deviceType == 'com.fibaro.FGMS001v2' or deviceType == 'com.fibaro.humiditySensor'
or deviceType == 'com.fibaro.FGFS101' or deviceType == 'com.fibaro.remoteSwitch'
or deviceType == 'com.fibaro.doorLock' or deviceType == 'com.fibaro.FGMS001'
or deviceType == 'com.fibaro.windowSensor' or deviceType == 'com.fibaro.doorSensor'
or deviceType == 'com.fibaro.FGSS001' or deviceType == 'com.fibaro.binarySwitch') then
if tonumber(batteryLevel) <= minBatteryLevel then
Debug( 'red', "POZOR! " ..name.." ("..room..")/Batéria: "..batteryLevel.." %")
else
Debug( 'green', name.." ("..room..")/Batéria: "..batteryLevel.." %")
end
end
end
end
end
Pozn.: Ak Vám nejaké zariadenie chýba neváhajte nás kontaktovať info@smarterhome.sk a LUA skript následne aktualizujeme.
Fibaro HC2: LUA skript kontrola stavu okien a dverí
Krátky LUA skript pre Z-Wave riadiacu jednotku Fibaro Home Center 2 na kontrolu stavu dverových a okenných senzorov...
Použitie Aeon Labs Minimote vo Fibaro HC2
Ako použiť Aeon Labs Minimote vo Fibaro HC2 pomocou LUA scény.
Realizácie a nastavenie zariadenia na spúšťanie scén Fibaro Swipe pomocou LUA skriptu.
1 Komentár
Jan 16.07.2018 Odpovedať
If your devices are named logically, you could just get the name instead of checking the device type using:modulename = fibaro:getName(id) ;
fibaro:debug("deviceid "..id.." named "..modulename.." - battery level is at "..batteryLevel.."%");