Fibaro HC2: LUA skript kontrola stavu oken a dveří

Fibaro HC2: LUA skript kontrola stavu oken a dveří

Asi mnozí z Vás se setkali se situací, že při odchodu z vlastního příbytku nevěděli, zda náhodou nenechali otevřené některé z oken. Museli jste tak jít zkontrolovat okno do konkrétní místnosti. V tomto blogu bude prezentován krátký a jednoduchý LUA skript, který Vám pošle PUSH notifikaci s informací o okně nebo dveřích, které zůstaly otevřené.

Tento LUA skript lze spustit např.:

  • pokud stisknete Fibaro Button, které máte u odjezdových dveřích
  • v případě, že používáte Zipato RFID čtečku na aktivaci nebo deaktivaci alarmu
  • např. změna hodnoty předdefinované proměnné ve Fibaro systému
  • LUA skript může spouštět jiná magická, bloková nebo LUA scéna ve Fibaro systému

Spuštění skriptu můžete navázat na libovolnou podmínku, která Vám vyhovuje.

Změny v LUA skriptu

V níže uvedeném LUA skriptu je třeba udělat pár úprav aby fungoval i na vámi používané řídící jednotce.

Potřebné je znát:

1. ID hodnoty okenních a dveřních senzorů, které chcete kontrolovat. (8. řádek v LUA)

Tyto hodnoty následně vložte v LUA skriptu na 8. řádek, který vypadá následovně -> sensors = {33, 37, 59}

2. ID hodnoty Mobilních Zařízení, na které chcete posílat PUSH oznámení. (9. řádek v LUA)

Tyto hodnoty následně vložte v LUA skriptu na 9. řádek, který vypadá následovně -> 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 notifikace na mobilním zařízení

Push notifikace na mobilním telefonu vypadá např. takto v původní i nové aplikaci pro FIBARO řídící jednotky.

fibaro-hc2-lua-door-windows-check

Pozn. 1: Uvedený LUA skript slouží jako inspirace, změny si můžete zakomponovat podle sebe. např. notifikaci neposílat pouze jako PUSH notifikaci ale jako email.

Pozn. 2: Pokud chcete do PUSH oznámení posílat pouze název místnosti - zakomentujte (-) všechny řádky v LUA skriptu obsahující řetězec "message1".

Pozn. 3: Pokud chcete do PUSH oznámení posílat jen název konkrétního zařízení - zakomentujte (-) všechny řádky v LUA skriptu obsahující řetězec "message2".

 

Jak získám ID hodnoty okenních a dveřních senzorů?

ID Z-Wave okenních a dveřních senzorů / zařízení víte získat několika způsoby:

  • po kliknutí na rozšířené možnosti Z-Wave zařízení buď v URL adrese nebo přímo v popisu zařízení

fibaro-hc2-lua-door-windows-check

  • přímo při tvoření LUA skriptu / scény pomocí levého bočního panelu

fibaro-hc2-lua-door-windows-check

fibaro-hc2-lua-door-windows-check

 

Jak získám ID hodnoty Mobilních zařízení přihlášených do Fibaro systému?

ID mobilních zařízení víte získat několika způsoby:

  • při převodu Blokové scény s použitím mobilním zařízení do LUA scény

fibaro-hc2-lua-door-windows-check

  • v nastaveních Fibaro -> rízení přístupu (Access control) -> Seznam mobilních zařízení (Mobile devices list) -> v priehliadači klikněte F12 -> Průzkumník -> šipku myši umístěte na Checkbox konkrétní mobilního zařízení

fibaro-hc2-lua-door-windows-check

fibaro-hc2-lua-door-windows-check

Podobné články

Použití Aeon Labs minimoto ve Fibaro HC2

Jak použít Aeon Labs minimoto ve Fibaro HC2 pomocí LUA scény.

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

Jednoduchý LUA skript pro kontrolu stavu bateriových zařízení.

LUA: Fibaro Swipe

Realizace a nastavení zařízení pro spouštění scén Fibaro Swipe pomocí 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ď

Vyhledávání v blogu

Najnovšie názory

Naposledy prohlížené

Žádné produkty

Menu

Porovnat 0