SimpleBind
SimpleBind позволяет настроить локальные автоматизации внутри шлюза, путем вызова тех или иных правил (SB Rule) при изменении состояний устройств.
Настройка
Для настройки необходимо зайти в свойства устройства (пульта, кнопки, датчика) и на вкладке "States" напротив контролируемого состояния в "SB rule" прописать необходимый код.
Правила
Управление устройствами
Позволяет напрямую из правила управлять целевыми устройствами, в зависимости от значения контролируемого состояния. Можно использовать несколько правил, разделяя их точкой с запятой.
- Формат записи SB Rule
rule1[;rule2;ruleN]
rule1[;rule2;ruleN]
- Формат rule
[condition] srcStateValue, dstDeviceId, dstStateName, DstStateValue
[condition] srcStateValue, dstDeviceId, dstStateName, DstStateValue
где аргументы разделённые запятыми (пробелы допускаются):
condition - необязательное условие
>, <, =, !, >=, <=, !=, <>
srcState - значение состояния при котором будет выполняться правило
dstDeviceId - идентификатор устройства которому будем отправлять команду. Допускается
FriendlyName
,ieeeAddr
,nwkAddr
dstStateName - имя состояния которым будем управлять
dstStateValue - значение которое будем отправлять в целевое состояние
Примеры
При одиночном нажатии кнопки переключает режим lamp_1
single, lamp_1, state, TOGGLE
single, lamp_1, state, TOGGLE
В зависимости от состояния выключателя, инвертирует режим для реле
ON, 0x00158D00007350D9, state, OFF; OFF, 0x00158D00007350D9, state, ON
ON, 0x00158D00007350D9, state, OFF; OFF, 0x00158D00007350D9, state, ON
Закрывает замок при клике, открывает при двойном
single, door_lock, state, LOCK; double, door_lock, state, UNLOCK
single, door_lock, state, LOCK; double, door_lock, state, UNLOCK
Для датчика влажности, включает увлажнитель если влажность меньше 40% и выключает если больше 60%
<40, humidifier, state, ON; >60, humidifier, state, OFF
<40, humidifier, state, ON; >60, humidifier, state, OFF
При разном типе нажатия на кнопку, управляет разной нагрузкой
single,lmp_bedroom,state,TOGGLE;double,lmp_bedroom-nightlight,state,TOGGLE;triple,rel_subwoofer,state,TOGGLE
single,lmp_bedroom,state,TOGGLE;double,lmp_bedroom-nightlight,state,TOGGLE;triple,rel_subwoofer,state,TOGGLE
Вызов скрипта LUA
Позволяет вызвать скрипт LUA и передать в него параметры.
- Формат записи SB Rule
script.lua[,Param]
script.lua[,Param]
- Примеры
Передача параметров в скрипт позволяет использовать один скрипт для обработки разных устройств. При этом вся логика однажды прописывается в скрипте, а для подстройки некоторых параметров, достаточно их изменить в SB Rule
При каждом изменении состояния датчика открытия вызвать скрипт mainDoorOnOffLight.lua
, с параметром mag|false|rel_tambur|state|ON|300
mainDoorOnOffLight.lua, mag|false|rel_tambur|state|ON|300
mainDoorOnOffLight.lua, mag|false|rel_tambur|state|ON|300
При каждом изменении состояния кнопки вызвать скрипт mainDoorOnOffLight.lua
, с параметром btn|false|rel_tambur|state|OFF|600
mainDoorOnOffLight.lua, btn|false|rel_tambur|state|OFF|600
mainDoorOnOffLight.lua, btn|false|rel_tambur|state|OFF|600
Выполнить текст скрипта LUA
Позволяет выполнить код скрипта прямо из правила SimpleBind
- Формат записи SB Rule
#code
#code
- Примеры
Вывод в лог имени вызвавшего устройства, состояния и его значения
#print(Event.FriendlyName, Event.State.Name, Event.State.Value)
#print(Event.FriendlyName, Event.State.Name, Event.State.Value)
Записать значение в объект
Позволяет записать в объект значение состояния, к которому привязано правило. Если объекта не существует, то он будет создан
- Формат записи SB Rule
objectName
objectName