Fibaro HC2: LUA skript kontrola stavu okien a dverí

Fibaro HC2: LUA skript kontrola stavu okien a dverí

Asi mnohí z Vás sa stretli so situáciou, že pri odchode z vlastného príbytku nevedeli, či náhodou nenechali otvorené niektoré z okien. Museli ste tak ísť skontrolovať okno do konkrétnej miestnosti. V tomto blogu bude prezentovaný krátky a jednoduchý LUA skript, ktorý Vám pošle PUSH notifikáciu s informáciou o okne alebo dverách, ktoré ostali otvorené.

Tento LUA skript sa môže spustiť napr.:

  • ak stlačíte Fibaro Button, ktoré máte pri odchodových dverách
  • v prípade, že používate Zipato RFID čítačku na aktiváciu alebo deaktiváciu alarmu
  • napr. zmena hodnoty preddefinovanej premennej vo Fibaro systéme
  • LUA skript môže spúšťať iná magická, bloková alebo LUA scéna vo Fibaro systéme

Spustenie skriptu môžete naviazať na ľubovoľnú podmienku, ktorá Vám vyhovuje.

Zmeny v LUA skripte

V nižšie uvedenom LUA skripte je potrebné urobiť pár úprav aby fungoval aj na Vami používanej riadiacej jednotke.

Potrebné je poznať:

1. ID hodnoty Okenných a Dverových senzorov, ktoré chcete kontrolovať. (8. riadok v LUA)

Tieto hodnoty následne vložte v LUA skripte na 8. riadok, ktorý vyzerá nasledovne -> sensors = {33, 37, 59}

2. ID hodnoty Mobilných Zariadení, na ktoré chcete posielať PUSH notifikácie. (9. riadok v LUA)

Tieto hodnoty následne vložte v LUA skripte na 9. riadok, ktorý vyzerá nasledovne -> phones  = {205, 206}

LUA skript

--[[
%% properties
%% weather
%% events
%% globals
--]]

sensors = {33, 37, 59} -- IDs of Windows or Door sensors
phones  = {205, 206} -- IDs of Mobile Devices for PUSH Notifications

local sensor_triggered = 0;
local sensor_name = 0;
local sensor_room = 0;
local message1 = "Okno miestnost: "; -- content of PUSH notification for Room Name, can be changed
local message2 = "Okno zariadenie: "; -- content of PUSH notification for Device Name, can be changed
local message3 = "Vsetko zatvorene!"; -- content of PUSH notification when no sensor is triggered


function sensors_check()
 
    for i=1, #sensors do
    
        if(tonumber(fibaro:getValue(sensors[i], "value")) > 0) then
            sensor_triggered = 1;
            sensor_name = fibaro:getName(sensors[i]);
            sensor_room = fibaro:getRoomNameByDeviceID(sensors[i]);            
            message1 = message1 .. sensor_room .. " | ";
            message2 = message2 .. sensor_name .. " | ";
        end
    
    end
 
end

function message_push()
 
    if (sensor_triggered == 1) then
    
        for j=1, #phones do
            fibaro:call(phones[j], "sendPush", message1);
            fibaro:call(phones[j], "sendPush", message2);
        end
    
        fibaro:debug(message1);
        fibaro:debug(message2);
    
    elseif (sensor_triggered == 0) then
    
        for j=1, #phones do
            fibaro:call(phones[j], "sendPush", message3);            
        end
    
        fibaro:debug(message3);
    
    end
 
end

-- main code
sensors_check()
message_push()

fibaro-hc2-lua-door-windows-check

PUSH notifikácia na mobilnom zariadení

Push notifikácia na mobilnom telefóne vyzerá napr. takto v pôvodnej aj novej aplikácii pre FIBARO riadiace jednotky.

fibaro-hc2-lua-door-windows-check

 

Pozn. 1: Uvedený LUA skript slúži ako inšpirácia, zmeny si môžete zakomponovať podľa seba. napr. notifikáciu neposielať len ako PUSH notifikáciu ale ako email.

Pozn. 2: Ak chcete do PUSH notifikácie posielať len názov miestnosti – zakomentujte ( -- ) všetky riadky v LUA skripte obsahujúce reťazec „message1“.

Pozn. 3: Ak chcete do PUSH notifikácie posielať len názov konkrétneho zariadenia – zakomentujte ( -- ) všetky riadky v LUA skripte obsahujúce reťazec „message2“.

 

Ako získam ID hodnoty Okenných a Dverových senzorov?

ID Z-Wave okenných a dverových senzorov / zariadení viete získať viacerými spôsobmi:

  • po kliknutí na rozšírené možnosti Z-Wave zariadenia buď v URL adrese alebo priamo v popise zariadenia

fibaro-hc2-lua-door-windows-check

  • priamo pri tvorení LUA skriptu / scény pomocou ľavého bočného panelu

fibaro-hc2-lua-door-windows-check

fibaro-hc2-lua-door-windows-check

 

Ako získam ID hodnoty Mobilných zariadení prihlásených do Fibaro systému?

ID mobilných zariadení viete získať viacerými spôsobmi:

  • pri konvertovaní Blokovej scény s použitím mobilným zariadení do LUA scény

fibaro-hc2-lua-door-windows-check

  • v nastaveniach Fibaro -> Rízení prístupu (Access control) -> Seznam mobilních zařízení (Mobile devices list) -> v priehliadači kliknite F12 -> Prieskumník -> šípku myši umiestnite na Checkbox konkrétne mobilného zariadenia

fibaro-hc2-lua-door-windows-check

fibaro-hc2-lua-door-windows-check

Podobné články

Použitie Aeon Labs Minimote vo Fibaro HC2

Ako použiť Aeon Labs Minimote vo Fibaro HC2 pomocou LUA scény.

LUA Skript: Kontrola Batérií - Fibaro Home Center 2

Jednoduchý LUA skript na kontrolu stavu batériových zariadení.

LUA: Fibaro Swipe

Realizácie a nastavenie zariadenia na spúšťanie scén Fibaro Swipe pomocou LUA skriptu.

2 Komentáre

  • Norbert Kovács

    Norbert Kovács 25.12.2020 Odpovedať

    Hello,

    the scene runs on the controller, but no push notification comes
    - I entered phone IDs
    do I need to change anything else?

    thank you and merry christmas!
    • SmarterHOME Team

      SmarterHOME Team 26.12.2020 Odpovedať

      Hello,
      thank you for comment.

      Are you sure that you entered correct IDs of mobile/smart devices?
      If yes then - Are you able to connect to your HC2 trough cloud (FIBARO ID service)?
      If yes, try to reboot your HC2.

      Have a nice day.

Zanechajte nám Váš názorZanechajte odpoveď

Vyhľadávanie v blogu

Najnovšie názory

Naposledy navštívené

Žiadne produkty

Menu

Porovnať 0