- Распечатать
Использование Node-RED с API Tulip
Если вы используете Node-RED на своем устройстве и хотите отправлять данные в API Tulip, Tulip предоставляет узлы Node-RED для конечных точек API.
Эти узлы предустановлены на устройствах Tulip, поддерживающих Node-RED, но если вы используете свой собственный экземпляр Node-RED, вы все равно можете установить узлы, установив пакет @tulip/node-red-tulip-api
из библиотеки Node-RED.
В этой статье вы узнаете, как...
- добавить узлы API Tulip в вашу установку Node-RED
- использовать API Tulip Machine Attribute для отправки данных в Tulip Machine
- использовать узел API Tulip Tables для чтения, записи и настройки Tulip Tables.
Предварительные условия:
- У вас установлен и локально запущен Node-RED.
Запускаете Node-RED на Tulip's Edge MC? Смотрите это руководство по началу работы
Установка
1. Добавьте @tulip/node-red-tulip-api
в палитру Node-RED
Откройте редактор Node-RED и перейдите в Меню → Управление палитрой
Перейдите на вкладку Install, а затем найдите @tulip/node-red-tulip-api
.
Примечание: Вы также можете установить пакет через командную строку. Перейдите в каталог пользователя Node-RED (т.е. cd ~/.node-red/
) и запустите npm install @tulip/node-red-tulip-api
.
2. Проверьте, что установка прошла успешно
Если установка прошла успешно, узлы tulip-machine-attribute
и tulip-tables
будут видны в палитре (левая боковая панель) в категории Tulip.
Использование узла атрибутов машины Tulip
Необходимые условия: вы прочитали статью Как использовать API атрибутов машин, у вас настроен API-бот с правами attributes:write
, и у вас есть конкретный атрибут машины, которому вы хотите отправить данные.
1. Перетащите узел Tulip Machine Attribute в ваш поток.
Примечание: В правой боковой панели выберите вкладку "Помощь", чтобы просмотреть документацию по использованию узла.
2. Настройте узел в соответствии с целевым атрибутом машины.
В качестве примера мы будем использовать следующий атрибут машины. Обратите внимание, что источником данных машины является Tulip API.
Целочисленный атрибут машины для Tulip Machine "Пример машины Tulip API".
Дважды щелкните на узле, чтобы открыть его редактор, а затем настройте узел в соответствии с этим машинным атрибутом. Например, вы можете настроить узел следующим образом:
Конфигурация узла Tulip Machine Attribute.
Узел Tulip API Authentication настроен следующим образом (заполните учетные данные для аутентификации):
Конфигурация Tulip API Authentication для API-бота.
3. Протестируйте отправку данных.
Создайте остальную часть потока для отправки данных на конечную точку Machine Attribute.
Простым тестовым потоком может быть отправка значения 0 на конечную точку Integer. Подключите вход узла атрибутов машины к узлу Inject, настроенному на msg.payload=0
(показано ниже). Подключите выход к узлу отладки, который печатает полный текст msg
.
Нажмите кнопку Развернуть, чтобы развернуть поток. Когда вы щелкните узел Inject, вы должны увидеть отладочное сообщение с кодом состояния 204.
Тестовый поток, который отправляет целочисленное значение 0 в целочисленный машинный атрибут.
Данные также должны появиться на вашем экземпляре Tulip под атрибутом машины.
Использование узла API Tulip Tables API
Предварительные условия: вы прочитали статью Как использовать API таблиц, у вас настроен API-бот с правами tables:read
и tables:write
, и у вас есть конкретная таблица, в которую вы хотите отправить данные.
1. Перетащите узел Tulip Tables в ваш поток.
Примечание: В правой боковой панели выберите вкладку "Помощь", чтобы просмотреть документацию по использованию узла.
2. Настройте узел для определенного API-запроса Tulip Tables.
Сначала дважды щелкните по узлу, чтобы открыть его редактор. Настройте узел конфигурации Tulip API Authentication, чтобы он соответствовал данным бота API с разрешениями tables:read
и/или tables:write
(в зависимости от того, является ли запрос таблицы операцией чтения или записи):
Конфигурация API-бота Tables
Установите Query Type на запрос, который вы хотите выполнить. Остальные опции запроса будут отображаться в соответствии с типом.
В этом примере мы выберем List records, чтобы перечислить записи в таблице с id 9YHHckKcFTXHQpXEu
с полем Status "REVIEW".
Конфигурация узла API таблиц
Расширенный JSON из поля "Фильтры" узла Tables API.
3. Протестируйте отправку данных.
Создайте остальную часть потока для отправки данных на конечную точку Tables API.
В качестве примера тестового потока можно подключить пустой узел Inject к входу узла Tables API, чтобы инициировать отправку запроса API. Вы также можете добавить узел отладки, который печатает msg.payload
, чтобы увидеть разобранный ответ.
Ниже показаны результаты, когда настроенный запрос Tables API отправляется к следующей таблице по адресу your-subdomain.tulip.co/tables/9YHHckKcFTXHQpXEu
. Обратите внимание, что ответ возвращает две записи таблицы с полем Status, установленным на REVIEW.
Таблица для запроса с несколькими записями. Включает поле Status, по которому мы можем фильтровать.
Поток для отправки API-запроса "List Records" Tables в Tulip Table, а также полезная нагрузка ответа.
Дополнительное чтение
- README пакета
@tulip/node-red-tulip-api
- Как использовать API таблиц
- Как использовать API атрибутов машины