Переменная не подставилась - видны фигурные скобки
В сообщении вместо значения показались сами скобки, например {{firstname}}. Это значит, что для этого имени переменной не нашлось значения - бот специально оставил плейсхолдер как есть, ничего не придумывая. Синонимы: не подставляется имя, скобки в тексте, переменная не работает, шаблон не заменился.
Пошагово: самые частые причины и проверки
Опечатка или пробелы в имени переменной
Имя берется точно как написано: {{ first_name }} с пробелами и {{frist_name}} с опечаткой не найдутся. Регистр тоже важен: {{First_name}} не то же самое, что {{first_name}}. Что делать: не вводите скобки вручную. В поле текста нажмите кнопку @ или «вставить переменную» и выберите нужную из списка - имя подставится без ошибок.
Переменная еще не создана к этому шагу сценария
Переменные, которые создают узлы сценария (ответ пользователя, внешний запрос, Google Таблицы), доступны только после этого узла. Если вы ссылаетесь на {{answer}} в сообщении, которое стоит раньше узла «Ожидание ответа» - значения еще нет. Что делать: убедитесь, что узел-источник переменной стоит раньше по сценарию.
{{user_answer}} пустой или старый
До этой точки не было узла «Ожидание ответа», либо ответ еще не получен. Поставьте «Ожидание ответа» перед узлом, который использует эту переменную. Важно: если в сценарии несколько узлов «Ожидание ответа», каждый последующий перезаписывает {{user_answer}}. Задайте каждому узлу уникальное имя переменной (например {{phone}}, {{email}}), чтобы значения не терялись.
Поле контакта не заполнено
Если у контакта поле «Имя» или «Фамилия» пустое (человек не заполнил его в Telegram), переменная {{first_name}} вернет пустоту или останется скобками. Заполните поле заранее через действие «Установить поле» или попросите человека указать имя через узел «Ожидание ответа».
Из внешнего запроса приходит весь JSON, а не одно поле
Если вы сохраняете ответ внешнего сервиса в переменную, туда попадет весь JSON-ответ целиком. Вытащить отдельное поле через {{переменная.поле}} не получится. Что делать: настройте свой API так, чтобы он возвращал нужное значение напрямую (не весь объект), либо обработайте ответ на стороне сервера до отправки в Strelo.
Если не получается
- Имя совпадает, узел стоит правильно, но все равно скобки - проверьте, не опубликован ли старый черновик сценария: переопубликуйте сценарий и попробуйте снова.
- Подстановка работает в тесте, но не в реальном диалоге - возможно, у конкретного контакта поле действительно пустое. Проверьте карточку этого контакта.
Лимиты и тариф
Базовые переменные контакта ({{first_name}}, {{last_name}}, {{user_answer}} и т. д.) доступны на всех тарифах. Узел «Ожидание ответа», который задает {{user_answer}}, работает на всех тарифах включая Free. Узел «Установить поле» (для задания произвольных переменных контакта) недоступен на Free - нужен минимум Pro.
Не нашли ответ?
Спросите ИИ-ассистента или напишите живой поддержке - поможем разобраться.