Довідник вбудованих дій у сценаріях
Тип сторінки: довідник.
Вбудовані дії надає ConnectiveOne та його модулі, зокрема Operator Panel, Custom Data, Registered Users і Fastline. Їх не потрібно створювати в Action Jail: додайте ноду Action та оберіть функцію в Node Inspector.
Повний довідник усіх дій: Довідник дій. Нижче наведено найчастіші групи з типовими параметрами та результатами.
Зміст
- Збереження констант (
set) - Маршрутизація (
goto_alias,switch,clear_constant) - Підключення до оператора
- Реєстрація та ідентифікація (
registered_users__*) - Custom Data (
custom_modules__*) - Графік роботи (
check_schedule) - Умовна логіка (
if_else) - Таймінги та інтервали (
sleep,interval__*) - Медіа (
send_photo,send_video,send_file) - Вхід користувача (
get_user_input) - Fastline / AI (
fastline_completion,fastline_pro) - Аналітика (
statistic__set)
1. Збереження констант (set)
Навіщо: записати значення у змінні стану (константи) — вибір мови, поля реєстрації, результати API.
Нода-шаблон у редакторі: часто використовується нода з шаблоном Set (action_set) — див. Нода Set (константи) та Параметри Set.
Технічна дія set: пари ключ → значення в json_obj; підтримуються плейсхолдери {{const}} та lodash-об’єкти для складних перетворень.
Вихід: зазвичай одна гілка default → наступна нода за next_element_id.
2. Маршрутизація (goto_alias, switch, clear_constant)
Навіщо:
| Дія | Призначення |
|---|---|
goto_alias |
Перехід до ноди за alias (назва секції/ноди) — меню, «Назад». |
switch |
Розгалуження за умовами (ключі = імена подій/гілок, значення = вираз). |
clear_constant |
Очистити константи за префіксом (module_name — префікси через кому). |
Відмінність від роутера (Router): нода Router працює з полями контексту звернення (канал, статус, теги…) у візуальному інспекторі. Дія switch — для розгалуження за константами / змінними сценарію та виразами в ноді Action (зручно для JSON і імпортованих сценаріїв).
Типові виходи switch: перша умова, що стала істинною → відповідна подія (ключ об’єкта); при помилці парсингу виразу — error.
Важливо (пастки):
- Немає вбудованої default-гілки. Якщо жодна умова не істинна, дія нічого не повертає — сценарій може «замовкнути». Додайте останньою парою запасний ключ (наприклад
fallback) з умовою, яка завжди істинна:"1 == 1", і підключіть цей edge на полотні. - Рядкові порівняння потребують лапок з обох боків. Після підстановки плейсхолдера вираз має лишатися валідним для обчислення. Неправильно:
{{user_choice}} == 'sales'(стаєsales == 'sales'і даєerror). Правильно:'{{user_choice}}' == 'sales'.
Приклад параметрів Action switch:
{
"sales": "'{{user_choice}}' == 'sales'",
"support": "'{{user_choice}}' == 'support'",
"other": "'{{user_choice}}' == 'other'",
"fallback": "1 == 1"
}
→ Параметри роутера · Умовні гілки (Router)
3. Підключення до оператора (operator_panel__connect_to_operator_with_msg)
Навіщо: створити чат-кімнату й передати діалог оператору з контекстом і темою черги.
Клієнтські матеріали: Нода «Підключення до оператора», параметри, довідник дії, сценарії з Operator Line.
Ключові параметри (скорочено): subject_alias, customTextToOperator, history_count, кнопки закриття/повернення, chat_closed_alias, fastline_operator тощо.
Виходи: success, banned, error — змикайте окремі гілки на полотні.
4. Реєстрація та ідентифікація (registered_users__*)
Дії: registered_users__check_phone — нормалізувати/перевірити телефон; registered_users__set — зберегти/оновити профіль; registered_users__get — знайти клієнта за чатом або телефоном.
Параметри (загально): check_by_phone, active, anonym; дані реєстрації з констант registration:*, reg_* або стандартних полів.
Телефон: якщо збираєте номер у сценарії — спочатку registered_users__check_phone, потім __set. __set не нормалізує 050… → 380….
Виходи registered_users__get: success (знайдено) / error (не знайдено). Після success стандартні поля читайте як {{client.first_name}} (не {{registration:first_name}} з двокрапкою). Детальніше: registered_users__get.
Деталі: Довідник дій — Registered Users (розділ Registered Users).
5. Custom Data (custom_modules__*)
Дії: custom_modules__get — знайти запис; custom_modules__set — створити; custom_modules__update — оновити за id.
Інструкції для інтеграторів: Як отримати запис, Як створити запис, Патерни Custom Data.
Ключові параметри: module_name (alias моделі), filters, fields, set_to, order.
6. Графік роботи (check_schedule)
Навіщо: перевірити, чи поточний час у межах робочого інтервалу (перед підключенням до оператора або для повідомлення «зараз не працюємо»).
Параметри: morning_time, evening_time, weekends, timezone.
Виходи: success (в межах графіку) / error (поза графіком або вихідний).
7. Умовна логіка (if_else)
Навіщо: складні гілки if / elseif / else з умовами та опційним записом констант у гілках.
Параметри: об’єкти if, elseif, else з умовами та полем event для імені виходу.
Вихід: подія з першої спрацьованої гілки або default.
Пов’язано: Дії у сценаріях (огляд умовних дій).
8. Таймінги та інтервали (sleep, interval__*)
| Дія | Призначення |
|---|---|
sleep |
Затримка (секунди), імітація «набору». Параметр: delay. |
interval__start |
Періодичний таймер (tick, end, type). |
interval__end |
Зупинити таймер поточної секції. |
interval__end_all |
Зупинити всі таймери для чату. |
Вихід sleep: зазвичай success.
9. Медіа (send_photo, send_video, send_file)
Навіщо: надіслати зображення, відео або файл за URL (промо, чеки, інструкції).
Детально: Відображення зображення користувачу — інтерфейс та дія send_photo.
Параметри: зазвичай url або посилання на константу з масивом посилань.
10. Вхід користувача (get_user_input)
Навіщо: нормалізувати текст повідомлення для групових ботів (згадування @bot), записати user_input, ім’я, файл тощо.
Виходи: raw_input, bot_mentioned, no_input.
Пов’язано: Очікування вводу — нода застосунку; get_user_input — низькорівнева дія для специфічних випадків.
11. Fastline / AI (fastline_completion, fastline_pro)
Навіщо: звернення до AI (Fastline) з контекстом сценарію; fastline_pro — розширений режим.
Налаштування агентів і БЗ: модуль FastlinePro у конструкторі — див. документацію модуля FastlinePro. У сценарії параметри залежать від конфігурації дії в Action Jail.
Виходи: текст відповіді або error.
12. Аналітика (statistic__set)
Навіщо: запис події в статистику (воронки, звіти, позиції).
Параметри: залежать від реалізації (назва події, позиція тощо) — уточнюйте в Node Inspector і довіднику дій.
Підсумкова таблиця
| Група | Типова сила використання | Де читати далі |
|---|---|---|
set |
Дуже висока | Нода Set |
goto_alias / switch / clear_constant |
Дуже висока | цей документ, §2 |
| Оператор | Дуже висока | Підключення до оператора |
registered_users__* |
Висока | Довідник дій |
custom_modules__* |
Висока | Патерни Custom Data |
check_schedule |
Висока | цей документ, §6 |
if_else |
Висока | цей документ, §7 |
sleep / interval__* |
Висока | цей документ, §8 |
| Медіа | Середня | Відображення зображення |
get_user_input |
Середня | цей документ, §10 |
| Fastline | Висока | Хаб FastLinePro |
statistic__set |
Середня | Довідник дій |