Nodul LogoNodul

Как создать собственные узлы

Сценарий типа Nodul часто используется для быстрого встраивания в другой сценарий, включающий предварительно настроенные и повторяющиеся действия.

Часто сценарий типа Nodul используется для быстрого встраивания уже настроенного и повторяющегося действия в другой, основной сценарий. Созданный сценарий типа Nodul доступен для выбора в списке всех узлов и визуально представляет собой настроенный узел.

При выполнении Production-ветки сценария, использующего сценарий типа Nodul, важен статус сценария типа Nodul:

  • Если статус сценария типа Nodul — Pause, а триггером основного сценария является узел Trigger on Webhook, при выполнении сценария возникнет ошибка, указывающая на необходимость активации сценария типа Nodul.

Untitled

  • Если статус сценария типа Nodul — Pause, а триггером основного сценария является узел Trigger on RunOnce, ошибки не возникнет, и сценарий будет выполнен.
  • Если статус сценария типа Nodul — Active, ошибки не возникнет при любом триггере основного сценария, и сценарий будет выполнен.

Если выполняется Development-ветка сценария, ошибки не возникнет, и сценарий будет выполнен.

Рассмотрим алгоритм создания сценария Nodul на примере.

Создадим сценарий, который записывает строку в Google Sheet. Запись строки текста в Google Sheet будет считаться повторяющимся действием. Получение данных из источника и их преобразование при необходимости будет считаться специфичным действием.

Для этого необходимо:

  1. Создать Сценарий типа Scenario с предварительным названием «String to Table», результатом которого является часто повторяющееся действие — внесение информации в Google Sheet:

Untitled 1

  • Добавить узел Trigger on Webhook для запуска сценария;
  • Добавить узел Add Single Row для записи строки в Google Sheet согласно вашим настройкам;

Untitled 2

  • Добавить узел Webhook Response для возврата ответа при выполнении сценария;

Untitled 3

  • Сохранить и активировать сценарий;
  1. В сценарии «String to Table» заменить узел Trigger on Webhook на узел NodulInput и заменить узел Webhook Response на узел NodulOutput;

QuickLook

💡 Вы можете добавить XML-код для иконки в поле «Icon (svg)», чтобы сценарий было легче идентифицировать.

Untitled 4

  1. Изменить текущее название сценария «String to Table» на «Al Tools/Actions/GoogleSheetAddRow»;

Brave

💡 Часть названия «Al Tools/Actions» необходима для хранения сценария как узла Action в папке Al Tools.

  1. Изменить тип сценария на Nodul;

Untitled 5

💡 Рядом с названием сценария после изменения типа используются иконки для обозначения «Nodul» (признак сценария типа Nodul) и «Private» (отсутствие публичного доступа к сценарию).

Brave 1

  1. Добавить параметр в узел NodulInput, например, User — текстовая строка. Параметры можно добавлять с помощью кнопки «Add Parameter».

Untitled 6

  1. Настроить параметры узла Add Single Row так, чтобы текст, добавляемый в строку таблицы, был равен значению параметра User в узле NodulInput.

Untitled 7

  1. Добавить результат выполнения сценария «Ok» в поле Result узла NodulOutput;

QuickLook 2

  1. Создать сценарий типа Scenario с названием «Get and Write Users», где результатом выполнения является получение данных пользователя, их преобразование и запись имени пользователя в Google Sheet.

Untitled 8

  • Добавить узел Trigger on Webhook для запуска сценария «Get and Write Users» и передачи в него JSON с данными пользователя:
{
	"Surname": "John",
	"Name": "Doe",
	"Email": "[email protected]"
}
  • Добавить узел JavaScript для создания полного имени пользователя на основе данных, полученных в Webhook, с помощью кода:
export default async function run({execution_id, input, data}) {

const SurName = data["{{1.body.Surname}}"];
const Name = data["{{1.body.Name}}"];
const FullName = Name +' '+ SurName;

    return {
      FullName
    }
}

Untitled 9

  • Добавить узел GoogleSheetAddRow (сценарий типа Nodul) для записи полного имени пользователя, полученного в узле JavaScript, в Google Sheet;

Untitled 10

  • Добавить узел Webhook response для получения ответа от узла GoogleSheetAddRow об успешном выполнении.

Untitled 11

  1. Сохранить и активировать сценарий.

Результатом сценария является запись строки в Google Sheet и ответ об успешной записи строки.

Untitled 12

В будущем, если информация о пользователе поступает из новых источников или требует другой обработки, узел GoogleSheetAddRow можно повторно использовать без перенастройки логики записи строк в Google Sheets.

Untitled 13

На этой странице