Блог компаниии Z-Waver

Применение Z-Wave на практике. Сделаем Z-Wave понятным!
3 minutes reading time (548 words)

Часть 2. Простые LUA скрипты: Проверка окон и дверей на открытие при штормовом предупреждении

LUA скрипт - проверка состояния дверей и окон при сильном ветре
Серия простых LUA скриптов продолжается. На этот раз мы хотим представить вам небольшой скрипт, который проверяет состояние ваших дверных / оконных датчиков в случае сильного ветра, и если есть открытые двери или окна, он отправит сообщение на ваш мобильный телефон.

Скрипт будет активирован с помощью прогноза погоды Yahoo, который уже реализован в контроллере Fibaro Home Center 2, и будет проверять все двери и окна в отношении их состояния (открыто / закрыто).
Если один или несколько датчиков не закрыты, вы получите push-уведомление с информацией о них на предварительно заданных мобильных телефонах. Это даст вам возможность своевременно закрыть открытые двери или окна.

Поэтому вы должны изменить данный скрипт в строках 6 и 7 следующим образом.

local storm = 62 -- км/ч скорость ветра, соответствующая урагану
local phoneID = {68, 113} -- ID смартфонов 
Эти строки предоставляют вашему контроллеру Fibaro HC2 информацию об ID вашего мобильного телефона и определенной скорости ветра, при которой ваша система должна отправлять push-уведомление. Локальная переменная «storm» предопределена значением скорости 54 км/ч (15 м/с), это официальная величина, при которой в России объявляется штормовое предупреждение. Вы можете установить любую другую скорость (в км/ч) в качестве переменной. Массив «phoneID» должен быть заполнен идентификаторами мобильных телефонов, которые должны получать уведомления.

Если вы не знаете идентификатор своего мобильного телефона, вы можете проверить его в API Fibaro Home Center 2. Для этого просто откройте веб-страницу с адресом http://IP-HC2/api/devices и найдите свои телефоны.
ID мобильного телефона
Здесь вы можете увидеть ID своего мобильного телефона. В нашем примере ID - 68.

Ниже представлен полный скрипт:
--[[
%% properties
3 Wind
%% globals
--]]
local storm = 54 -- км/ч скорость ветра при шторме
local phoneID = {68, 113} --IDs мобильных телефонов
local maxID = 1000
 
Debug = function ( color, message )
  fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span"))
end
 
local startSource = fibaro:getSourceTrigger();
local wind = fibaro:getValue(3, 'Wind')
 
if ((tonumber(fibaro:getValue(3, 'Wind')) > tonumber(sturm)) or startSource['type'] == 'other') then
    if (startSource['type'] == 'other') then
     Debug('white', "Скрипт запущен вручную")
    else
     Debug('green', "Скрипт запущен по прогнозу погоды")
    end
  	Debug('red', "ВНИМАНИЕ! Штормовое предупреждение! Скорость ветра: " ..wind.. " км/ч")
  	Debug('white', "Проверка открытых окон")
  	for id = 1, maxID do
      local deviceType = fibaro:getType(id)
      	if (deviceType == 'com.fibaro.windowSensor' or deviceType == 'com.fibaro.doorSensor') then
          if (tonumber(fibaro:getValue(id, 'value')) == 1) then
            local name = fibaro:getName(id) 
            local room = fibaro:getRoomNameByDeviceID(id) 
            Debug('red', "ВНИМАНИЕ! Штормовое предупреждение! " ..name.. " в комнате " ..room.. " Открыт!")
        	for k=1, maxID do
                      if phoneID[k] ~= nil then
                        fibaro:call(phoneID[k], 'sendPush', 'ВНИМАНИЕ! Штормовое предупреждение! ' ..name.. ' в комнате ' ..room.. ' открыт!')
                      end
            end
          	end
        end
    end
end 

Скрипт должен запускаться по прогнозу скорости ветра в Home Center 2. Также скрипт можно активировать вручную, в результате в отладчике вы увидите белую строку «Скрипт запущен вручную». Это дает вам возможность протестировать push-уведомления и определить конкретные датчики.
Если сцена запущена по прогнозу погоды, отладчик покажет вам зеленую строку «Скрипт запущен по прогнозу погоды». В обоих скриптах push-уведомления одинаковы.

После завершения отладки, в случае возникновения штормового предупреждения, вы получите следующие push-уведомления:

Push-уведомления о шторме и открытых окнах
Мы также не забыли предложить подходящий значок для этого скрипта.
Иконка шторма для Fibaro HC2

 Если у вас есть идеи для нашей серии "Простые LUA скрипты" или дополнительные вопросы, напишите в комментариях. Мы будем рады каждой идее и постараемся ее реализовать.

Источник: http://www.siio.com/

Контроллер Vera Secure (и не только) в качестве ох...
Обзор контроллера Vera Secure

Читайте также:

 

Комментарии (0)

Rated 0 out of 5 based on 0 voters
There are no comments posted here yet

Оставьте свой комментарий

Posting comment as a guest. Sign up or login to your account.
0 Characters
Вложения (0 / 3)
Share Your Location

Блог - Добро пожаловать!

EasyBlog - Biography Module

пользователь zwaveadmin не оставил ничего в своей биографии ...

Блог - Календарь

Подождите минутку, пока генерируется календарь

Блог - Последние комментарии

Образы для установки Hass.io периодически обновляются. Сс...
Сайт Z-Wave Альянса рекламирует «интероперабельность» (...
Z-Wave - это просто протокол связи, как правило все Z-Wave уст...
Если не все устройства Z-Wave на 100% совместимы друг с дру...
Здорово! Но я бы вместо звонка поставил бы все-таки Aeotec ...

Блог - Последние блоггеры

admin
Записей: 64
пользователь admin не оставил ничего в своей биографии
Manager
Записей: 42
пользователь Manager не оставил ничего в своей биографии
zwaveadmin
Записей: 18
пользователь zwaveadmin не оставил ничего в своей биографии
Mobilniy
Записей: 2
пользователь Mobilniy не оставил ничего в своей биографии
Support
Записей: 0
пользователь Support не оставил ничего в своей биографии

Блог - Командные блоги

Z-Waver

Членов: 3

Блог - Категории

Блог - Информация по записи

  02.01.2018
  510 просмотров