Skip to content

SimpleBind

SimpleBind позволяет настроить локальные автоматизации внутри шлюза, путем вызова тех или иных правил (SB Rule) при изменении состояний устройств.

Настройка

Для настройки необходимо зайти в свойства устройства (пульта, кнопки, датчика) и на вкладке "States" напротив контролируемого состояния в "SB rule" прописать необходимый код.

sb_rules

Правила

Управление устройствами

Позволяет напрямую из правила управлять целевыми устройствами, в зависимости от значения контролируемого состояния. Можно использовать несколько правил, разделяя их точкой с запятой.

  • Формат записи SB Rule
text
rule1[;rule2;ruleN]
rule1[;rule2;ruleN]
  • Формат rule
text
[condition] srcStateValue, dstDeviceId, dstStateName, DstStateValue
[condition] srcStateValue, dstDeviceId, dstStateName, DstStateValue

где аргументы разделённые запятыми (пробелы допускаются):

  • condition - необязательное условие >, <, =, !, >=, <=, !=, <>

  • srcState - значение состояния при котором будет выполняться правило

  • dstDeviceId - идентификатор устройства которому будем отправлять команду. Допускается FriendlyName, ieeeAddr, nwkAddr

  • dstStateName - имя состояния которым будем управлять

  • dstStateValue - значение которое будем отправлять в целевое состояние

  • Примеры

При одиночном нажатии кнопки переключает режим lamp_1

text
single, lamp_1, state, TOGGLE
single, lamp_1, state, TOGGLE

В зависимости от состояния выключателя, инвертирует режим для реле

text
ON, 0x00158D00007350D9, state, OFF; OFF, 0x00158D00007350D9, state, ON
ON, 0x00158D00007350D9, state, OFF; OFF, 0x00158D00007350D9, state, ON

Закрывает замок при клике, открывает при двойном

text
single, door_lock, state, LOCK; double, door_lock, state, UNLOCK
single, door_lock, state, LOCK; double, door_lock, state, UNLOCK

Для датчика влажности, включает увлажнитель если влажность меньше 40% и выключает если больше 60%

text
<40, humidifier, state, ON; >60, humidifier, state, OFF
<40, humidifier, state, ON; >60, humidifier, state, OFF

При разном типе нажатия на кнопку, управляет разной нагрузкой

text
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
text
script.lua[,Param]
script.lua[,Param]
  • Примеры

Передача параметров в скрипт позволяет использовать один скрипт для обработки разных устройств. При этом вся логика однажды прописывается в скрипте, а для подстройки некоторых параметров, достаточно их изменить в SB Rule

При каждом изменении состояния датчика открытия вызвать скрипт mainDoorOnOffLight.lua, с параметром mag|false|rel_tambur|state|ON|300

text
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

text
mainDoorOnOffLight.lua, btn|false|rel_tambur|state|OFF|600
mainDoorOnOffLight.lua, btn|false|rel_tambur|state|OFF|600

Выполнить текст скрипта LUA

Позволяет выполнить код скрипта прямо из правила SimpleBind

  • Формат записи SB Rule
text
#code
#code
  • Примеры

Вывод в лог имени вызвавшего устройства, состояния и его значения

text
#print(Event.FriendlyName, Event.State.Name, Event.State.Value)
#print(Event.FriendlyName, Event.State.Name, Event.State.Value)

Записать значение в объект

Позволяет записать в объект значение состояния, к которому привязано правило. Если объекта не существует, то он будет создан

  • Формат записи SB Rule
text
objectName
objectName