Von Zeit zu Zeit werden wir euch in dieser neuen Serie ein paar kleine, nützliche LUA-Skripte zeigen. Hier erfahrt Ihr mehr.
In der ersten Folge der neuen Serie stellen wir euch ein kleines Skript vor, mit welchem Ihr den Status aller batteriebetriebenen Geräte prüfen könnt. Das Skript zeigt euch an, ob der Batterie-Status noch in Ordnung ist, oder ob Ihr darüber nachdenken solltet, die Batterien vielleicht in der nächsten Zeit auszutauschen. Die unterschiedlichen Status werden in Grün (Batterie in Ordnung) und in Rot (Batterie unter 25% Kapazität) aufgelistet. Auf dem folgenden Bild könnt Ihr das veranschaulicht erkennen:
Das LUA Skript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
--[[ %% 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.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.binarySwitch' or deviceType == 'com.fibaro.FGSS001') then if tonumber(batteryLevel) <= minBatteryLevel then Debug( 'red', "ACHTUNG! " ..name.." ("..room..")/Batterie: "..batteryLevel.." %") else Debug( 'green', name.." ("..room..")/Batterie: "..batteryLevel.." %") end end end end end |
- com.fibaro.remoteSwitch (z.B. Wall-C)
- com.fibaro.doorLock (z.B. RFID-Sensor, danalock)
- com.fibaro.FGMS001 (MotionSensor)
- com.fibaro.windowSensor (Doorsensor)
- com.fibaro.doorSensor (Doorsensor)
- com.fibaro.binarySwitch (z.B. Batteriebetriebene Sirene)
- com.fibaro.FGSS001 (SmokeSensor v1 & v2)
- com.fibaro.FGFS101 (FloodSensor)
Sollten euch beim Test noch weitere device-Typen auffallen, welche nicht durch das oben gezeigte Skript abgedeckt sind, dann schaut doch bitte in der API nach dem device-Type. Dies könnt Ihr über die URL http://IP-HC2/api/devices?=ID_des_devices. Hier sucht Ihr dann nach der ID, welche nicht im Skript auftaucht. In der darauf erscheinenden Ansicht, kopiert euch bitte den Reiter "type"
Stellt uns diesen bitte in den Kommentaren zur Verfügung, dann können wir das Skript immer weiter updaten. Vielen Dank für eure Mithilfe und nun viel Spass mit dem Skript :)