Покрокова інструкція
Markdown статтіПовідомити про помилку

Як отримати запис з Custom Data за критеріями пошуку?

Коли в сценарії потрібно знайти існуючий запис (наприклад, магазин за містом, клієнта за email або VIP за телефоном), використовуйте дію custom_modules__get. Вона шукає запис за значеннями зі змінних стану і зберігає результат у змінну для подальшого використання.

Коли знадобиться

  • Користувач обирає місто — потрібно показати список магазинів з Custom Data.
  • Користувач вводить email або телефон — потрібно перевірити VIP-статус або отримати дані клієнта.
  • Потрібно перевірити, чи існує запис з певними значеннями, і продовжити сценарій відповідно.

Що важливо знати

  • custom_modules__get — дія для пошуку та отримання запису з Custom Data.
  • Перед використанням потрібно зберегти в стані користувача значення полів для пошуку.
  • Пошук виконується за значеннями зі змінних типу "назва_моделі:назва_поля".
  • Після отримання запису можна вивести його атрибути в блоці повідомлення.

Перед початком

Покрокова інструкція

Підготовка критеріїв пошуку

  1. У сценарії додайте блоки для збору даних, за якими потрібно шукати:
    • "Очікування відповіді" — для введення значення пошуку
    • "Повідомлення з клавіатурою" — для вибору з варіантів
  2. Збережіть значення в змінні типу "назва_моделі:назва_поля" (наприклад, customer:email, product:code).

Приклад: Для пошуку за полем "email" збережіть значення в змінну customer:email.

Налаштування дії

  1. Додайте блок "Дія" в сценарій після блоків збору критеріїв пошуку.
  2. У налаштуваннях блоку "Дія" оберіть функцію custom_modules__get.
  3. У полі конфігурації (JSON) введіть параметри:
{
  "module_name": "customer",
  "set_to": "customer"
}
  • module_name — назва моделі з кастомною таблицею (наприклад, "customer", "product")
  • set_to — назва змінної, в яку збережеться знайдений запис (наприклад, "customer", "found_product")
  1. Збережіть зміни в дії та сценарії.

Використання отриманого запису

Після отримання запису можна вивести його атрибути в блоці повідомлення, використовуючи змінну з set_to. Наприклад, якщо set_to = "customer", можна використати {{customer:name}} або {{customer:phone}} для виведення значень полів.

Приклад використання

Сценарій:

  1. Блок "Очікування відповіді" → користувач вводить email, зберігається в customer:email
  2. Блок "Дія" з custom_modules__get → шукає запис за customer:email, зберігає в customer
  3. Блок "Повідомлення" → виводить {{customer:name}} та {{customer:phone}}

Типові сценарії

Сценарій Поля моделі Послідовність
Довідник магазинів city, address, lang_code Користувач обирає місто → get за filters → показ списку магазинів
Перевірка VIP email, phone, vip_status Користувач вводить email/phone → get → показ VIP-переваг або стандартний флоу
Категорії для роутингу id, first_level, last_level, name Inline-кнопки з callback_data = id → get за id → роутинг до гілки

Важливі примітки

  • Перед використанням custom_modules__get обов'язково збережіть значення полів для пошуку в змінні стану користувача.
  • Якщо запис не знайдено, змінна з set_to буде порожньою.
  • Можна використовувати кілька полів для пошуку одночасно — система знайде запис, який відповідає всім критеріям.

Що відбувається після

Після виконання дії custom_modules__get знайдений запис зберігається в змінну, вказану в set_to. Запис стає доступним для використання в наступних блоках сценарію. Якщо запис не знайдено, змінна буде порожньою.

Як переконатися, що все вдалось

  • Перевірте, що значення для пошуку збережені в змінні типу "назва_моделі:назва_поля".
  • Переконайтеся, що назва моделі в module_name відповідає існуючій моделі.
  • Протестуйте сценарій та перевірте, що запис знайдено та збережено в змінну.
  • Перевірте, що атрибути запису доступні для виведення.

Пов'язані матеріали

Працюєте з власним ШІ-агентом?Встановіть відкритий skill, щоб ваш ШІ-агент працював з актуальною офіційною документацією ConnectiveOne.Отримати skillПотрібна підтримка?Не знайшли відповідь або потрібна допомога команди ConnectiveOne? Створіть запит у Client Portal.Створити запит