Простые правила для выключателя без фиксации

Всем привет.

  1. Пытаюсь найти правила которые бы позволили отследить три действия: одинарное нажатие, двойное нажатие и долгое нажатие (больше одной секунды). На данный момент пытаюсь это написать для модуля WBIO-DI-WD-14, а управляю реле MRPS6. В документации только один пример по работе с кнопкой. На форуме нашёл несколько тем по написанию правил, но там тема не раскрывалась в полной мере. Все же правила стандартные, может есть какой-то стандартный механизм определения трёх действий?
  2. Для чего введено понятие виртуальное устройство? На github в wb-rules об этом написано очень скомкано и не совсем понятно.

Всё же нашёл рабочий код здесь Движок правил: примеры кода - #98 от пользователя RA093.
Можно как-то этот код адаптировать, что бы долгое нажатие отключало все выходы у MRPS6?
Я думаю, если этот код является официальным вариантом, то его надо вынести в wiki

Здравствуйте!

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

Адаптировать можно, для этого нужно в Helper Functions добавить реализацию своего алгоритма.

Указанное правило - пример реализации функции обработки нажатий: Нестандартные функции выключателей - #6 от пользователя BrainRoot.
Сейчас в модулях реле со входами прошивки поддерживают распознавание разных типов нажатий. При возможности рекомендую использовать их возможности.

1 лайк

спасибо за объяснение и ссылки, буду разбираться