Node-RED

Node-RED — это автономный инструмент управления рабочими процессами, не являющийся частью ioBroker, но хорошо интегрирующийся с ним. Программирование осуществляется с помощью потоков : узлы размещаются на карте и соединяются линиями, по которым передаются сообщения.

Доступ осуществляется через адаптер Node-RED . Он включает Node-RED, запускает его и устанавливает соединение с состояниями ioBroker. Начиная с версии адаптера 7, в него включен Node-RED 5; он обновляется вместе с адаптером, а не отдельно.

Node-RED работает как отдельный процесс параллельно с ioBroker, имея собственное использование памяти и редактор. Для простых автоматизаций это существенная дополнительная нагрузка — Blockly — более простой вариант.

Der Node-RED-Editor mit einem Flow aus ioBroker-Knoten

Схема работы редактора: узлы слева, область посередине. Узлы группы ioBroker — состояния чтения и записи.

Меблировать

  1. Установите адаптер Node-RED и создайте экземпляр.
  2. В настройках экземпляра при необходимости отрегулируйте порт и защиту доступа. По умолчанию используется порт 1880 на всех сетевых интерфейсах, без аутентификации.
  3. Редактор открывается с помощью кнопки экземпляра в панели администратора или непосредственно под ней.http://<adresse-des-servers>:1880 .

!> Доступность без регистрации и на всех интерфейсах означает: любой пользователь сети может изменять потоки и, таким образом, контролировать все, что контролирует ioBroker. Пользователям Node-RED следует настроить защиту доступа в параметрах экземпляра.

Узлы ioBroker

В палитре редактора появляется отдельная группа ioBroker, состоящая из шести узлов:

узелЗа что
ioBroker вТриггер: выводит сообщение сразу после изменения состояния.
ioBroker outЗаписывает содержимое сообщения в состояние
ioBroker получитьПолучает текущее значение состояния, не дожидаясь его изменения.
ioBroker получить объектИзвлекает объект по его идентификатору, то есть по его описанию, а не по значению.
список ioBrokerВозвращает список штатов для заданного шаблона.
ioBroker sendToОтправляет команду экземпляру адаптера, например, Telegram.

Таким образом, простой поток состоит из двух узлов: ioBroker для запуска, ioBroker для реакции, и между ними — узел, который необходимо решить.

Что важно в настройках экземпляра?

  • Ограничение по памяти. По умолчанию — 128 МБ. Потокам, содержащим большие объемы данных, требуется больше памяти; в противном случае Node-RED завершит работу без видимой причины.
  • Дополнительные узлы. Управление палитрой по умолчанию отключено. Чтобы установить дополнительные пакеты узлов, включите их или добавьте пакеты в настройках.
  • Создание внешних объектов также отключено по умолчанию. Пока эта функция отключена, поток может создавать только состояния ниже своего собственного экземпляра.
  • Контекстное хранилище. Node-RED может сохранять значения после перезапуска. Начиная с версии адаптера 7, это файловое хранилище называется...file вместоdefault Любой пользователь, явно выбравший место хранения в узле, должен выбрать его там еще раз.

Почему стоит использовать Node-RED

Node-RED отлично подходит для работы с потоками данных: объединение нескольких источников, запросы и ответы через HTTP-интерфейсы, MQTT, многошаговые преобразования и очереди. Для классической домашней автоматизации — триггеров, условий, действий — он не превосходит JavaScript-адаптер, но требует второго процесса и второго редактора.

Одновременное возникновение обоих явлений возможно и распространено. Состояния — это общий язык: то, что записывает поток, скрипт видит немедленно, и наоборот.