Связаться с нами

Запланировать видео‑звонокМенеджер за 15 минут покажет личный кабинет в работе Написать в тех. поддержкуПомощь с работой платформы и оплатой Написать на почтуСотрудничество, партнёрство и другие предложения

Переменные и условия

Переменная хранит то, что скрипт узнал о человеке. По ней блок «Условие» разводит диалог, а условный текст меняет кусок сообщения.

Завести переменную

  1. Настройки › Переменные › Создать.
    Вкладка «Переменные» в настройках скрипта
  2. Задайте название, тип и значение по умолчанию.
    Окно «Создать переменную»: название, тип и значение по умолчанию
Текст
Любая строка: ответ человека, город, имя.
Число
Сравнивается как число: больше, меньше.
Да/Нет
Флажок: «напомнили», «согласился».

Название начинается с буквы, дальше — буквы, цифры и _, и не повторяется внутри скрипта. Переменную можно завести и на ходу — кнопкой Создать переменную в блоках «Установить переменную» и «Условие».

Записать значение

Блок Установить переменную: выберите переменную и способ.

Ввод
Значение задаёте вы. Для текста — строка, в ней работают подстановки: [message.incoming.last] запишет последний ответ человека. Для числа — число, для Да/Нет — переключатель.
ИИ Платно
Опишите задачу — ИИ прочитает и ответит значением нужного типа. Не смог ответить по типу — переменная останется пустой.
Блок «Установить переменную» в режиме «Ввод»: «напомнили» = Да
Блок в режиме «ИИ»: задача с подстановкой последнего ответа

Подставить переменную в текст

Переменная подставляется в сообщение, уведомление и задачу для ИИ как [variable.имя]. Наберите [variable. — редактор покажет, какие есть.

Подсказка переменных после «[variable.»

Так же подставляются переменные списка аудитории — заводить их в скрипте не нужно. Если имя есть и там и там, значение берётся первое непустое по порядку:

  1. записанное в этом диалоге блоком «Установить переменную»;
  2. значение у человека в списке аудитории;
  3. значение по умолчанию в скрипте;
  4. значение по умолчанию в списке аудитории.

Ничего не нашлось — подставится пустота. Переменной с таким именем нет нигде — [variable.имя] останется в тексте со скобками.

Подстановки внутри переменной

Значение переменной само может содержать подстановки — они раскроются при отправке. Например, в список аудитории загружено вступление Меня зовут [account.name]: каждый человек увидит имя того аккаунта, который ему пишет.

Текст, пришедший из Telegram, — сообщения человека, описание профиля и канала — так не раскрывается: скобки из него вырезаются. Переменная, которая через цепочку ссылается сама на себя, дальше не раскрывается.

Развести по условию

  1. Добавьте блок Условие и нажмите Добавить правило.
  2. Выберите, что сравнивать: переменную скрипта или данные диалога — имя человека, последний ответ, сколько часов тишины.
    Список «Переменная» в правиле условия
  3. Выберите сравнение и значение. Правил может быть несколько: Все — нужны все, Любое — хватит одного.
    Условие «Отказ?»: два правила и выбор «Любое»
  4. Свяжите выходы: верхний, зелёный — если условие выполнено, нижний, красный — если нет.
Переменных списка аудитории в выборе нет. Чтобы сравнить такую переменную, заведите в скрипте переменную с тем же именем: у каждого человека подхватится его значение из списка.

Какие сравнения есть для текста, чисел и Да/Нет и какие данные диалога доступны — в справочнике.

Показать кусок текста по условию

Чтобы не плодить блоки ради одной фразы, условие пишут прямо в тексте:

[if user.name][user.name], добрый день![else]Добрый день![/if]

ЗаписьЧто значит
[if user.name]…[/if]Показать, если заполнено
[if not user.name]…[/if]Показать, если не заполнено
[if variable.город = Москва]…[else]…[/if]Показать одно или другое
[if variable.точек > 1 and variable.город = Москва]…[/if]Нужны оба условия; or — хватит одного

В тексте работают и переменные скрипта, и переменные списка аудитории. Наберите [if — редактор подскажет переменные и сравнения, а закрывающий [/if] допишет сам. Вкладывать [if] друг в друга нельзя, смешивать and и or в одном теге — тоже.

Ошибку в тегах — нет пары, лишний [else], непонятное сравнение — редактор подчёркивает красным.

Незакрытый тег [if] подчёркнут красным

Пока ошибка есть, скрипт не будет готов к запуску: такой текст ушёл бы человеку как есть, со скобками.

То же через ИИ-ассистента

ИИ-ассистент «Заведи переменную “интерес” и пусть ИИ после каждого ответа решает: да, нет или неясно»