Перейти до змісту

Користувач

Ноди секції Користувач працюють із даними поточного користувача. Учасник має набір тегів: Set user tag додає тег, Remove user tag видаляє один тег, Get user tag читає всі теги у змінну, а User has tag розгалужує сценарій за тегами.

У редакторі поле тега пропонує dropdown із тегами, які вже використовуються в нодах Set user tag поточної схеми.

1. Set user tag (Встановлення тега користувача)

Set user tag (SetUserTag) додає один тег поточному учаснику. Теги унікальні: додавання вже наявного тега нічого не змінює.

Налаштування

Поле Значення
UserTag Статичний текст. Шаблони (#var, {{ JS }}) не підтримуються
NextAction Єдиний вихід

Connections

  • Вхід: один стандартний connector.
  • Вихід: один NextAction.

Set user tag не створює власну #node.* змінну. Оновлений набір тегів одразу доступний у цьому ж execution через #member.tags.

Змінні і шаблони

UserTag є статичним текстом; dynamic values не рендеряться.

Наприклад:

customer

Приклад

Condition "purchased"
  -> Set user tag "customer"
  -> Screen "Дякуємо"

Важливі особливості

  • Порожній тег нічого не змінює.
  • Новий тег видно одразу в тому самому execution: #member.tags оновлюється негайно, тому Get user tag і User has tag нижче за Set user tag вже бачать його.
  • Профіль зберігається після проходження поточного ланцюжка.
  • Set user tag призначений для messenger flow і не використовується в синхронному AI tool.

2. Get user tag (Отримання тегів користувача)

Get user tag (GetUserTag) читає всі теги поточного учасника та створює node-scoped змінну, яку можна використовувати в наступних нодах.

Налаштування

Поле Значення
OutputKeyName Назва вихідного ключа; за замовчуванням user_tag
NextAction Єдиний вихід

Connections

  • Вхід: один стандартний connector.
  • Вихід: один NextAction.

Вихідна змінна

Результат доступний у форматі:

#node.{id}.{OutputKeyName}

Він містить теги учасника як JSON-рядок масиву, наприклад:

["vip","kyiv"]

Без member context результат дорівнює [].

Глобальна змінна:

#member.tags

також містить поточний набір тегів як JSON-рядок масиву. Get user tag потрібний, коли теги потрібно отримати як явний output конкретної ноди.

Приклад

Get user tag
  -> Condition 'parseJson(#node.21.user_tag).includes("customer")'
       | True  -> Screen "Для клієнтів"
       | False -> Screen "Загальний екран"

Важливі особливості

  • Не залишайте OutputKeyName порожнім: backend це дозволяє, але результат матиме незручний ключ #node.{id}..
  • Get user tag не дає корисного результату в синхронному AI tool, оскільки там немає member context.

3. User has tag (Користувач має тег)

User has tag (UserHasTagNode) перевіряє теги поточного учасника і направляє execution у True або False гілку.

Налаштування

Поле Значення
UserTags Список тегів для перевірки; потрібен хоча б один тег
Mode Any (default) означає хоча б один збіг; All означає всі теги зі списку; ExactMatch означає, що набір тегів точно дорівнює списку
TrueAction Перехід, якщо перевірка успішна
FalseAction Перехід, якщо перевірка неуспішна

Connections

  • Вхід: один стандартний connector.
  • Виходи: True і False.

У редакторі підключайте обидві гілки явно.

Вихідні змінні

Після виконання User has tag створює:

#node.{id}.userHasTag.result

Значення: True або False.

Приклад

User has tag ["vip"], Any
  | True  -> Screen "VIP offers"
  | False -> Switch "#node.7.city"

Важливі особливості

  • Порівняння case-sensitive.
  • Щоб описати "tag1 і tag2", використовуйте режим All або ланцюжок із двох нод User has tag.
  • ExactMatch ігнорує порядок.
  • User has tag призначений для messenger flow і не використовується в синхронному AI tool.

4. Remove user tag (Видалення тега користувача)

Remove user tag (RemoveUserTagNode) видаляє один тег поточного учасника. Видалення відсутнього тега є no-op.

Налаштування

Поле Значення
UserTag Статичний текст. Шаблони (#var, {{ JS }}) не підтримуються
NextAction Єдиний вихід

Connections

  • Вхід: один стандартний connector.
  • Вихід: один NextAction.

Важливі особливості

  • Оновлений набір тегів одразу доступний у цьому ж execution через #member.tags.
  • Remove user tag не створює власних #node.* вихідних змінних.
  • Профіль зберігається після проходження поточного ланцюжка.
  • Remove user tag призначений для messenger flow і не використовується в синхронному AI tool.