Описание 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) - данные запроса в формате JSONwires
(array) - массив подключений для обработки ответа