Урок 35. Язык выражений (expressions)
Как подставлять живые данные в тексты бота (имя клиента, дату, цифры из анкеты) через переменные в двойных скобках.
Цель урока
После урока ты понимаешь, что такое переменные {{...}}, различаешь две семьи (переменные лида/сообщения и переменные отчёта), знаешь, где их брать (готовый список, не выдумывать), и умеешь читать превью, где видно, что подставилось, а что осталось {{...}}.
Простыми словами
Ты уже видел эти скобки раньше: в уведомлении о горячем лиде было {{client_name}}, в письме клиенту и в теле запроса к своему API, тоже. Выражения это «умные вставки» в текст. Пишешь в двойных фигурных скобках {{client_name}}, а бот подставляет туда живое значение: реальное имя клиента (для Айгерим → «Айгерим»).
Слайды урока
Непонятные слова: на пальцах
- Переменная: «пустое место» в тексте, куда подставится настоящее значение. Как бланк «Здравствуйте, ______!»: бот впишет в прочерк имя клиента.
{{двойные скобки}}: знак «сюда подставь». Пример:{{client_name}}→ «Айгерим». Как поле для заполнения в анкете, только заполняет бот.- Живое значение, реальные данные вместо заготовки: имя, дата, число из отчёта. Пример:
{{leads}}в отчёте станет «11». Как счётчик, который показывает актуальную цифру. - Системная переменная: берётся автоматически из карточки лида/диалога (
{{client_name}},{{phone}},{{stage}}). В превью подставляется сразу. - Параметр функции: переменная, которую бот заполняет по разговору (
{{course}},{{reason}}). В превью остаётся{{...}}, пока бот не соберёт значение в диалоге. - Справочник переменных: список того, что можно подставлять. Как меню: выбираешь из готового, не выдумываешь названия.
Зачем это нужно
Чтобы сообщения были персональными и точными, а не безликими. «Здравствуйте, Айгерим!» работает лучше, чем «Здравствуйте!». А в отчётах переменные подставляют реальные цифры за период.
Две семьи переменных
1. Про клиента/лида, работают в промпте, уведомлениях, письмах, дожимах, запросах к API:{{client_name}}, {{client_phone}}, {{phone}}, {{name}}, {{project_name}}, {{channel}}, {{stage}}, {{lead_status}}, {{summary}}, {{data}}.
2. Про цифры (только в шаблоне отчёта):{{dialogs}}, {{leads}}, {{conversion}}, {{spend}}, {{balance}}, {{prev_dialogs}}, {{prev_leads}}, {{prev_conversion}}, {{top_tags}}, {{leads_list}} и т.д.
Отдельно есть параметры функции ({{course}}, {{reason}}): их бот заполняет из разговора; в превью они остаются {{...}}, пока значение не собрано.
Пример
Уведомление: «🔥 Горячий лид: {{client_name}}, {{phone}}» → бот присылает «🔥 Горячий лид: Айгерим, +7…».
Отчёт: «Сегодня заявок: {{leads}}, конверсия {{conversion}}%» → подставятся реальные числа.
Когда нужно / когда нет
- Хочешь персонализировать сообщения или собрать кастомный текст отчёта.
- Простому боту без персонализации это не обязательно, можно не трогать.
Частые ошибки
- Опечатка в имени переменной → подстановка не сработает, останется
{{...}}в тексте. Сверяйся со справочником. - Перепутал семью → переменные отчёта (
{{leads}}) не работают в уведомлении клиенту, и наоборот. - Ждут переменную, которой нет → используй только существующие (см. справочник).
Вопросы новичка
- Обязательно ли это использовать? Нет. Простому боту без персонализации выражения не нужны: можно не трогать.
- В тексте осталось
{{client_name}}, почему не подставилось? Скорее всего опечатка в названии или переменной нет в этой семье. Сверься со справочником и пиши имя точь-в-точь. - Откуда бот берёт значение? Переменные лида, из карточки диалога (имя, телефон, стадия); переменные отчёта, из цифр за период. Ты просто ставишь «пропуск».
- Почему в превью
{{course}}не подставился? Это параметр функции: бот заполнит его по ходу разговора, а системные переменные (имя) подставляются сразу. - Можно придумать свою переменную? Нельзя выдумать произвольную. Особое поле лида собирается через промпт, а не новой переменной.
Проверь себя
- Чем системная переменная отличается от параметра функции в превью?
- Почему
{{leads}}не сработает в уведомлении клиенту? - Что делать, если в отправленном тексте осталось
{{client_name}}?
Что дальше
Дальше, последний модуль: Урок 36, что делать если что-то пошло не так.

