424,38 €
(bez DPH)
679,00 €
LUA Skript: Kontrola Batérií - Fibaro Home Center 2
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í.
Príklad skriptu:
--[[
--[[
%% 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
Nasledujúce typy zariadení, ktoré sú podporované:
- fibaro.humiditySensor (senzory vlhkosti)
- fibaro.remoteSwitch (z.B. Wall-C)
- fibaro.doorLock (z.B. RFID-Sensor, danalock)
- fibaro.FGMS001 (pohybový senzor v1 a v2)
- fibaro.windowSensor (oknové senzory)
- fibaro.doorSensor (dverové senzor)
- fibaro.binarySwitch (napr. batériová sirená)
- fibaro.FGSS001 (smoke senzor v1 a v2)
- fibaro.FGFS101 (flood senzor)
Pozn.: Ak Vám nejaké zariadenie chýba neváhajte nás kontaktovať info@smarterhome.sk a LUA skript následne aktualizujeme.
Ja* 16.07.2018
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.."%");