Блок «Ввод»
Останавливает 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}" ```