Переменная пустая

Симптомы

  • В сообщении клиенту видно `#{name}` буквально как текст
  • Или: вместо имени — пусто

Причины

### 1. Переменная не была установлена

В flow должно быть set_variable БЕФОРЕ использования:

``` set_variable name = "Иван" ← устанавливаем ↓ message: "Привет, #{name}!" ← теперь работает ```

### 2. Имя переменной не совпадает

Case-sensitive! `#{Name}` ≠ `#{name}`.

### 3. Использование builtin переменных

Embedded:

  • `#{client.name}` — имя клиента
  • `#{client.phone}` — телефон
  • `#{message.text}` — текст последнего сообщения
  • `#{bot.name}` — имя бота
  • `#{now}` — текущее время ISO
  • `#{button}` — value последней нажатой кнопки

Если client.name пуст — Telegram не предоставил (юзер скрыл profile).

### 4. Глобальные переменные

`#{global.some_var}` — global.* префикс обязателен. Устанавливаются в Settings → Variables.

Debug

В BotTest → выполните flow → внизу панель "Variables" покажет current state каждой переменной.