SVG панели и конфиг node-red

Создал простой проект где управляю освещением с wirenboard 7.4 и панельки Sonoff. Естественно с использованием всех нужных палитр-библиотек для wirenboard, svg панелей. Сами панели создаю в Inscape. Понял, настроил и отладил часть функций которая работает напрямую с входов и напрямую на выходы - например видно срабатывание датчиков движения на svg панели и включаются-выключаются нагрузки с нее же корректно.
Затруднение же состоит в том, что не получилось пока с более сложным функционалом где мне нужно брать нажатия на svg панели и получить это в node red. Это нужно мне сделать обязательно. Робота помощника я уже использовал, до противоречивых результатов. Скорее всего затык в настройке ноды SVG graphics - внутрь я вставляю svg код изображения, на вкладке event назначаю нужный элемент, к нему click и payload ставлю 1. Ничего не срабатывает. Уже создал голую картинку, т к подозревал что в рабочей слишком много вложенностей. Также большой вопрос вызывает вкладка справа dashboard- для чего вообще нужно создавать там эти панельки если они уже загружены через веб интерфейс? Допускается ли работа с одним и тем же изображением где есть привязки через веб интерфейс и если нужно вот так взаимодействовать с node red? Нужно ли заносить код картинки и во вкладке справа?

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

Поскольку SVG панели взаимодействуют с топиками, значит, вам следует создать топик и забирать его данные в NODE-Red.

Создать топик можно посредством виртуального устройства.


У вас остались какие-либо вопросы?

Если честно, вопросов стало только больше. Тем более что я конфигурирую только через node red и правила rules в веб-интерфейсе не писал. И по вашему объяснению получается что event в ноде svg graphics не позволяет взаимодействовать с потоками в node red и это можно делать только через топики?
По ссылке я не понмаю где взаимодействия с топиками описаны. По факту там вирт. устройства - это функции?

Может быть, я не правильно вас понял. К действию на SVG панели можно подвязать только MQTT контрол.

Как я говорил, виртуальное устройство нужно только чтобы создать топик. Внутреннюю логику никакую можно не описывать, раз вы работаете в NODE-Red.
Подробнее про виртуальные устройства.

очень пропрошу мне все по порядку. Как брать из SVG нажатия на элементы и использовать их в nod-e red. Все исходные данные и ситуацию я максимально постарался описать в 1 сообщении

Да, конечно. Порядок следующий:

  1. Создаете виртуальное устройство с нужным количеством и типом топиков
  2. Теперь вы сможете нажатием на элементы панели присваивать значения топикам, которые вы создали в 1-м пункте
  3. Наконец, использовать нужные топики в NODE-Red c помощью ноды «mqtt in», например.

Если требуется отображать состояние, то действия аналогичные.

Спасибо. Я выходец из электрики и автоматизации промышленной, это не означает что-то плохое, просто вижу что пока по другому мыслю и не знаю так хорошо эту технику. Дальше распишем пож. - 1. Виртуальное устройство это есть правило которое нужно написать в веб-интерфейсе а не в function внутри node red? 2. Суть в том что создав правило , я смогу выбирать в веб-интерфейсе нужный топик равно как например, релейный выход? 3. мне вообще пригодится нода svg graphics при этом- для чего она тогда вообще если нельзя через нее через event взять что-то с панели?

Упустил из виду дашборды NODE-Red. Видимо, вы говорите именно про них.
Я же говорил про дашборды в веб интерфейсе.
Это разные вещи и с ними нужно работать по разному.


Опыта работы с дашбордами NODE-Red у меня почти нет. Но, если вам важно работать именно с ними - давайте разберемся.

Вернусь к вашему первому сообщению и попробую воспроизвести.

А я в свою очередь путаю вас получается. Дашборды svg загружены у меня в веб интерфейсе, там же написал виртуальное устройство уже, 3 топика у меня теперь отображется, привязки от svg сделал. В node red я не буду тогда пока сгружать код svg изображений, верно? А по поводу топика- по совету робота пробую сейчас вытянуть нажатия кнопок через mqtt in, пишет что connected (как я понимаю это просто к брокеру подключился а не с топику), а результата также пока нет, у меня сразу debug стоит после mqtt in для проверки

Хорошо, значит разобрались с используемыми инструментами.

Нет, в NODE-Red вам теперь следует работать только с топиками.

Кстати, если вы используете библиотеку Wiren Board, то можете пользоваться ей при подключении к топикам. Это то же самое, что и «MQTT in».
Вот пример подключенного топика через ноду «MQTT in»:


Вот дебаг:

Какой топик вы подключаете? и какой в виртуальном устройстве?
Топик изменяется? В NODE-Red приходят только измененные значения.

Добрый день. Удалось решить вопрос?