Основные концепции Ботодрома
Здесь приводятся описания основных концепций, используемых в Ботодроме.
Узел#
Узел — это основной строительный блок потока.
Узлы запускаются либо при получении сообщения от предыдущего узла в потоке, либо при ожидании какого-либо внешнего события, такого как входящий HTTP-запрос, Long Poll обновление или таймер. Они обрабатывают это сообщение или событие, а затем могут отправить сообщение следующим узлам в потоке.
Узел может иметь не более одного входного порта и столько выходных портов, сколько ему потребуется.
Конфигурационный узел#
Конфигурационных узел (конфиг) - это особый тип узла, который хранит общие настройки для использования обычными узлами.
Один и тот же конфигурационный узел может использоваться несколькими обычными узлами одновременно. Например, VK API и VK In узлы используют конфигурационный узел VK API Config для совместного подключения к API ВКонтакте с одним ключом доступа.
Узлы конфигурации не отображаются в основной рабочей области, но их список можно увидеть, открыв боковую панель узлов конфигурации.
Поток#
Поток представлен в виде вкладки в рабочей области редактора и является основным способом организации узлов.
Термин «поток» также используется для неформального описания одного набора связанных узлов. Таким образом, поток (вкладка) может содержать несколько потоков (наборов связанных узлов).
Сообщение#
Сообщение - это то, что передается между узлами в потоке. Оно представляет собой обычный JavaScript-объект, который может иметь любой набор свойств. Внутри редактора объект сообщения часто обозначается как msg.
Провод#
Провода соединяют узлы и показывают, как сообщения проходят через поток.
Подпоток#
Подпоток - это набор узлов, которые свернуты в один узел в рабочей области.
Их можно использовать для визуального упрощения потока или для упаковки группы узлов в один общий компонент, используемый в нескольких местах.
Контекст#
Контекст - это способ хранения информации, которая может совместно использоваться узлами без использования сообщений, проходящих через поток.
Есть три типа контекста:
- Узловой - виден только узлу, который установил значение
- Потоковый - виден всем узлам в одном потоке (вкладке в редакторе)
- Глобальный - виден всем узлам
Контекстные данные в Ботодроме могут храниться в одном из двух типов хранилищ:
- Файл ("file") - значения хранятся в файловой системе и автоматически восстанавливаются при перезапуске сервера
- Память ("memory") - значения хранятся в оперативной памяти и не сохраняются при перезапусках сервера
По умолчанию в Ботодроме используется файловое хранилище.
Палитра#
Палитра находится слева от редактора и содержит список узлов, доступных для использования в потоках.
Рабочая область#
Рабочая область - это основная область, в которой потоки создаются перетаскиванием узлов из палитры и соединением их проводами.
В верхней части рабочей области находятся вкладки потоков и всех открытых подпотоков.
Боковая панель#
Боковая панель справа от редактора содержит ряд полезных инструментов, разделенных по панелям-вкладкам. К ним относятся панели для просмотра дополнительной информации и справки об узле, для просмотра отладочных сообщений и для просмотра конфигурационных узлов потока.