Перейти к основному содержимому

Описание JSON схемы

В этом документе описана структура JSON схемы модуля Интеграций.

Общая структура

JSON схема представляет собой массив объектов, где каждый объект является либо нодой (узлом), либо вкладкой (tab):

[
{
"label": "Hello World!",
"id": "1f24387b252057fe",
"type": "tab",
"disabled": false
},
{
"name": "run",
"id": "b51ab819b83e1915",
"type": "inject",
"x": 46.96875,
"y": 99.51171875,
"z": "1f24387b252057fe",
"wires": [
[
"bd07e1ff0aedba0b"
]
]
},
{
"id": "2b524ca59e4ed633",
"type": "debug",
"name": "debug",
"x": 610.05078125,
"y": 98.59765625,
"z": "1f24387b252057fe",
"wires": []
},
{
"name": "function",
"func": "msg.payload = 'World'\n\nreturn msg;",
"id": "bd07e1ff0aedba0b",
"type": "function",
"x": 229.62890625,
"y": 98.8515625,
"z": "1f24387b252057fe",
"wires": [
[
"2e1172b330c69aeb"
]
]
},
{
"id": "2e1172b330c69aeb",
"type": "template",
"name": "template",
"x": 418.66796875,
"y": 98.19140625,
"z": "1f24387b252057fe",
"syntax": "mustache",
"template": "Hello {{payload}} !",
"output": "str",
"wires": [
[
"2b524ca59e4ed633"
]
]
}
]

Основные параметры нод

Большинство нод имеют следующие общие параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (например, "inject", "function", "template")
  • name (string) - отображаемое название ноды
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив массивов идентификаторов нод, к которым подключен выход

Системные ноды

Нода "tab" (вкладка)

Нода типа tab представляет собой контейнер для группы нод, визуально отображаемый как вкладка в интерфейсе.

Параметры:

  • label (string) - отображаемое название вкладки
  • id (string) - уникальный идентификатор вкладки
  • type (string) - тип ноды (tab)
  • disabled (boolean) - отключена ли вкладка

Нода "debug" (отладка)

Нода типа debug используется для вывода сообщений в отладочную панель.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (debug)
  • name (string) - отображаемое название ноды
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Связи между нодами

Параметр wires определяет связи между нодами. Каждый элемент массива соответствует выходу ноды и содержит массив идентификаторов нод, к которым подключен этот выход.

Пример:

"wires": [
[
"bd07e1ff0aedba0b"
]
]

Описание параметров нод

Нода "inject" (инжектор)

Нода inject используется для создания и отправки сообщений в поток вручную.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (inject)
  • name (string) - отображаемое название ноды
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Нода "function" (функция)

Нода типа function позволяет выполнять произвольный JavaScript код.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (function)
  • name (string) - название ноды
  • func (string) - выполняемый код
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Нода "template" (шаблон)

Нода типа template используется для преобразования сообщений с использованием шаблонов.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (template)
  • name (string) - название ноды
  • syntax (string) - синтаксис шаблона (mustache или plain)
  • template (string) - шаблон сообщения
  • output (string) - тип вывод (plain, json или yaml)
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Нода "interval-node" (интервал)

Нода типа interval-node используется для генерации сообщений через заданные интервалы времени.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (interval-node)
  • name (string) - название ноды
  • interval (number) - интервал в минутах между сообщениями
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Нода "switch" (переключатель)

Нода типа switch используется для маршрутизации сообщений по различным путям в зависимости от условий.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (switch)
  • name (string) - название ноды
  • property (string) - свойство сообщения для проверки
  • rules (array) - массив правил для маршрутизации
  • outputs (number) - количество выходных портов
  • checkall (string) - проверять все правила (true или false)
  • repair (boolean) - исправлять невалидные сообщения
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Нода "split" (разделитель)

Нода типа split используется для разделения сообщений на несколько частей.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (split)
  • name (string) - название ноды
  • property (string) - свойство сообщения для разделения
  • propertyType (string) - тип свойства (msg, flow, global)
  • splt (string) - разделитель для строк
  • spltType (string) - тип разделителя (str, bin)
  • arraySplt (number) - размер частей для массивов
  • arraySpltType (string) - тип разделения массивов (len, index)
  • stream (boolean) - потоковый режим обработки
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для выходов

Нода "http in" (HTTP вход)

Нода типа http in используется для создания HTTP endpoint'ов и приема входящих HTTP запросов.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (http in)
  • name (string) - название ноды (необязательно)
  • url (string) - URL путь endpoint'а
  • method (string) - HTTP метод (get, post, put, delete, patch)
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для обработки запросов

Нода "http request" (HTTP запрос)

Нода типа http request используется для выполнения исходящих HTTP запросов.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (http request)
  • name (string) - название ноды
  • url (string) - URL адрес для запроса
  • method (string) - HTTP метод (GET, POST, PUT, DELETE, и т.д.)
  • ret (string) - формат ответа (obj, txt, bin)
  • headers (array) - массив заголовков запроса
  • paytoqs (string) - куда помещать payload (body, query)
  • useAuth (boolean) - использовать аутентификацию
  • authType (string) - тип аутентификации (basic, bearer)
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для обработки ответа

Нода "http response" (HTTP ответ)

Нода типа http response используется для отправки HTTP ответов клиенту.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (http response)
  • name (string) - название ноды
  • statusCode (number) - HTTP статус код ответа
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений (обычно пустой)

Нода "cms-events"

Этот узел позволяет отслеживать события из модуля Events и вбрасывать их в поток.

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (cms-events)
  • name (string) - название ноды
  • eventMarker (string) - идентификатор события
  • property (string) - свойство сообщения для обработки
  • targetType (string) - тип цели обработки (msg, flow, global)
  • x, y (number) - координаты ноды на рабочей области
  • z (string) - идентификатор вкладки, к которой принадлежит нода
  • wires (array) - массив подключений для дальнейшей обработки

Нода "admin-api" (Admin API)

Этот узел позволяет взаимодействовать с различными API

Основные параметры:

  • id (string) - уникальный идентификатор ноды
  • type (string) - тип ноды (admin-api)
  • name (string) - название ноды
  • path (string) - путь API endpoint'а
  • method (string) - HTTP метод (post, get, put, delete)
  • operation (string) - идентификатор операции контроллера
  • data (string) - данные запроса в формате JSON
  • wires (array) - массив подключений для обработки ответа