Главная · Справка · Переменные и поля

Переменные и поля

Переменные — способ обратиться к клиенту по имени, повторить ему то, что он написал, и передать эти данные дальше: в «Условие», в сделку CRM, во внешнюю систему. Источник переменных — блок «Сбор данных» и действие «Записать переменную». Ниже — как настроить сбор, как подставлять значения и где они работают, а где нет.

Блок «Сбор данных»

Блок задаёт вопрос и ждёт ответа текстом. Настройки:

  • Что спрашиваем — Имя, Телефон, E-mail или Своё поле. Первые три пишутся в карточку контакта (в «Контактах» их видно сразу), своё поле — в дополнительные поля карточки под указанным именем.
  • Текст вопроса — сюда можно подставить уже известные переменные: «{{name}}, оставьте телефон для подтверждения».
  • Проверка ввода — Без проверки, E-mail, Телефон или Число. Телефон принимается с плюсом, пробелами и скобками, от 7 цифр; e-mail — по формату «что-то@домен.зона».
  • Текст при ошибке — что бот ответит, если ввод не прошёл проверку: «Похоже, в номере опечатка — пришлите ещё раз».
  • Попыток — сколько раз бот переспросит при неверном формате (по умолчанию 3). Не делайте проверку строже, чем нужно: клиент, которого трижды не поняли, уходит.
  • В переменную — имя переменной сценария, например slot или phone. Без этого поля значение попадёт в карточку контакта, но «Условие» и «HTTP-запрос» его не увидят.

При первом сохранённом телефоне или e-mail владельцу бота уходит письмо о новой заявке — отдельно настраивать не нужно. Имя из «Сбора данных» перезаписывает имя, взятое из профиля мессенджера.

Подстановка в сообщениях

В тексте любого «Сообщения» (и в тексте вопроса «Сбора данных») работают фигурные скобки:

ПеременнаяОткуда берётся
{{name}}Имя из карточки контакта: сначала из профиля Telegram/MAX/VK или pre-chat формы виджета, затем — из «Сбора данных» с типом Имя
{{phone}}Телефон из карточки контакта
{{email}}E-mail из карточки контакта
{{slot}}, {{city}}, любое своё имяПеременная сценария: «В переменную» в «Сборе данных», действие «Записать переменную», ответ «HTTP-запроса» или сводка действия «Данные маркетплейса»

Пример: «Спасибо, {{name}}! Заявка на {{slot}} принята, перезвоним на {{phone}}». Имена переменных — латиницей, без пробелов; регистр важен.

Пустое значение подставляется пустой строкой. «Здравствуйте, {{name}}!» у контакта без имени превратится в «Здравствуйте, !». Поэтому либо соберите имя до первого обращения, либо ставьте переменную там, где её отсутствие не бросается в глаза («Заявка принята{{name}}» не спасёт — лучше отдельное предложение). Проверить, задана ли переменная, можно блоком «Условие» с оператором «задано».

Где ещё работают переменные

  • «Условие» — проверка «Переменная»: area больше 40, city в списке «Москва, Казань». Значение должно быть сохранено «В переменную» — см. справку об условиях.
  • Действие «Сделка в CRM» — название сделки с подстановкой: «Запись: {{name}}, {{slot}}». Так менеджер видит суть заявки в канбане, не открывая диалог.
  • Действие «Уведомить оператора» — текст уведомления: «Срочный вопрос от {{name}}, {{phone}}».
  • Действие «HTTP-запрос» — все переменные сценария уходят во внешнюю систему в поле vars запроса; ответ сервера можно записать «В переменную» и показать клиенту. Формат — в справке по webhook.
  • ИИ-агент видит переменные сценария и может учитывать их в ответе — например, город или выбранную услугу.

Где переменные не работают

  • В рассылках — только {{name}}, {{phone}}, {{email}} из карточки контакта. Свои переменные живут внутри диалога и в раздел «Рассылки» не попадают; персонализируйте сегменты тегами.
  • Арифметики нет. «Записать переменную» присваивает значение, но не складывает и не умножает. Баллы в квизе считаются тегами и «Условием», а не суммой.
  • Переменная живёт в диалоге. Она сохраняется между шагами, после «Паузы» и при перезапуске сценария, пока диалог не закрыт; в новом диалоге того же клиента её не будет — в отличие от имени, телефона и e-mail, которые лежат в карточке контакта. Что должно пережить диалог — записывайте своим полем или тегом.

Готовые примеры сбора и подстановки — в шаблонах «Запись клиентов» ({{slot}} в подтверждении) и «Квиз-бот» (число в переменную и условие по нему). Проверить подстановку без мессенджера можно кнопкой «Проверить сценарий» в редакторе.

Частые вопросы

Чем «Своё поле» отличается от «В переменную»?
«Своё поле» сохраняет ответ в карточку контакта под указанным именем — он виден в «Контактах» и переживает диалог. «В переменную» делает значение доступным сценарию: для подстановки, «Условия» и «HTTP-запроса». Обычно включают оба.

Почему в сообщении отобразилось «{{slot}}» как текст?
Переменная с таким именем не задана в этом диалоге — проверьте имя в поле «В переменную» (регистр и латиница) и что блок сбора стоит раньше сообщения. Незнакомые имена подставляются пустой строкой, а фигурные скобки с пробелами или кириллицей не распознаются.

Можно ли подставить свою переменную в рассылку?
Нет, в рассылках работают только {{name}}, {{phone}} и {{email}} из карточки контакта. Для разных текстов разным группам используйте теги и отдельные рассылки.

Откуда бот берёт имя, если его не спрашивали?
Из профиля мессенджера (имя и фамилия в Telegram, имя в MAX и VK) или из pre-chat формы виджета. Блок «Сбор данных» с типом Имя перезаписывает его тем, что написал клиент.

Создать бота бесплатно