Блок «Ввод»

Останавливает flow и ждёт ответа клиента — сохраняет в переменную.

Поля

  • variableName — куда сохранить (например `email`)
  • validate — тип валидации:

- `text` — любая строка (default) - `email` — RFC валидация - `phone` — формат телефона - `number` — целое или дробное - `url` — http/https URL - `date` — DD.MM.YYYY - `regex` — собственный регексп

  • errorMessage — что показать при невалидном вводе
  • maxAttempts — сколько попыток дать (default 3, при превышении → fallback)

Поведение

1. Бот пишет prompt (предыдущий message блок) 2. Клиент отвечает текстом 3. Если валидно — сохраняет, идёт дальше 4. Если невалидно — показывает errorMessage, ждёт ещё раз

Скип ввода

В UI можно добавить `skipButton`. При клике переменная остаётся пустой.

Использование далее

``` input → variableName="email" ↓ message → "Гид отправлен на #{email}" ```