Побудова сценарію
Редактор
Section titled “Редактор”Полотно посередині, палітра додавання та інспектор навколо. Блоки пересуваються мишею, а вигляд можна прокручувати й масштабувати.

Додавання блоку
Section titled “Додавання блоку”З палітри, впорядкованої за категоріями: керування, композиція (запити та з’єднання), списки, цикли, час, математика, алгоритміка, формати даних, кодування, інтерфейс, утиліти.
Дія, прив’язана до запиту (Запит HTTP, Запит SOAP, усі дії з’єднання), вимагає вказати запит проєкту, яким вона керує.
Зв’язок «сценарій ↔ запит»
Section titled “Зв’язок «сценарій ↔ запит»”Вибір запиту в дії створює міцний зв’язок: дія посилається на запит за його ідентифікатором, а не за копією. Звідси випливає:
- запит залишається спільним — його зміна (URL, заголовки, тіло) змінює те, що виконують усі сценарії, які його використовують, під час їхнього наступного запуску;
- зв’язок переживає перейменування чи переміщення запиту в дереві: він не спирається ні на назву, ні на шлях;
- у самому запиті smartbar має кнопку «Використовується у сценаріях» — вона перелічує сценарії, що його викликають, і дає змогу перейти до них. Це рефлекс, який варто мати перед зміною спільного запиту;
- відсутній запит (видалений або відсутній під час відкриття проєкту) спричиняє помилку перевірки сценарію: кнопка запуску залишається заблокованою, а проблемний блок позначається — жодного тихо зламаного сценарію.
Щоб відтворити той самий запит, не чіпаючи його збереженої версії, не змінюйте його: скористайтеся перевизначеннями (швидкий параметр, перевизначення дії, зв’язок), описаними в розділі Перевизначення запиту.
Налаштування блоку
Section titled “Налаштування блоку”Кожен блок має свої поля, які заповнюються прямо на блоці або в інспекторі. Поля приймають типізовані значення — рядок, число, булеве, дату, вираз Handlebars, змінну, власний список, секрет… — див. Змінні та середовища.
Ctrl+Space викликає автодоповнення змінних і помічників у полях, які його
підтримують.
З’єднання
Section titled “З’єднання”Тягніть від вихідного порту до вхідного.
Два правила, які варто знати:
- Вхідний порт приймає лише один зв’язок — окрім порту
in, який приймає скільки завгодно й тоді працює як бар’єр. - Вихід чистого сигналу не може живити вхід чистого значення. Усе інше дозволено: вихід, який несе значення, слугує й тригером.
Подробиці: Порти та зв’язки.
Селектор зв’язку
Section titled “Селектор зв’язку”Зв’язок може мати селектор — шлях, застосований до значення в дорозі.
data.items[0].idbody['user-id']statusСаме це позбавляє потреби вставляти блок перетворення між кожним викликом і його споживачем. Селектор налаштовується під час створення зв’язку або пізніше; якщо його очистити, він зникає.
Перевизначення запиту
Section titled “Перевизначення запиту”Дія, прив’язана до запиту, може змінювати його, не чіпаючи самого запиту. Чотири шари, саме в такому порядку:
- запит таким, як його збережено;
- швидкий параметр (quick config), вказаний на дії, — саме так повторно використовують збережений варіант запиту просто у сценарії, не вводячи його заново;
- перевизначення, введені на дії;
- значення, що надходить зв’язком на порт перевизначення.
Це охайний спосіб відтворити той самий виклик із трьома наборами даних.
Повторне спрацювання на кожну подію
Section titled “Повторне спрацювання на кожну подію”Контекстне меню блоку пропонує «Повторювати на кожну отриману подію». Якщо цей параметр увімкнено, усі під’єднані входи перетворюються на неблокувальні логічні «або»: блок спрацьовує заново на кожне значення, отримане будь-яким портом, замість того щоб чекати, поки надійдуть усі.
Це незамінно для обробки потоку (кожне повідомлення MQTT, кожна подія SSE), а ще саме це розблоковує цикл завершення.
Параметри та виходи
Section titled “Параметри та виходи”- Блок Input / Param оголошує параметри сценарію. Вони надаються під час
запуску, у командному рядку (
--param ім'я=значення) або запитуються під час виконання в інтерактивному режимі. - Блок Output / Return віддає результат тому, хто викликав, — це корисно, коли сценарій викликається іншим через дію Запустити сценарій.
Упорядкування
Section titled “Упорядкування”Restorm уміє автоматично впорядковувати граф (розкладка); блоки й після
цього можна пересувати вручну. Ctrl+Z скасовує, Ctrl+Shift+Z повертає.
Перевірка
Section titled “Перевірка”Кнопка запуску заблокована, доки залишаються помилки перевірки: неправильний зв’язок, відсутній запит, порожнє обов’язкове поле. Проблемні блоки позначаються.