Блок «Универсальная форма»
Универсальная форма позволяет настроить свои поля.
Мы можем реагировать на заполнение формы пользователем, отвечать в личку, сохранять и передавать информацию.
Настройка формы
Для начала добавим новый блок "Универсальная форма"

Теперь откроем настройки блока формы нажав на шестеренку

Переходим к настройке блока.
Для начала нажмите кнопку "Настроить поля"
По умолчанию стоят поля: Имя, Электронный адрес, Номер телефона.

Вы можете удалить лишние поля нажав на корзину справа.
Создание новых полей
Ниже представлено несколько типов полей

- Строка - для короткого текста без абзацев
- Абзац - для длинного текста с поддержкой абзацев
- Выбор - для выбора одного пункта из списка
- Email, Телефон и пароль - стандартные поля
- Скрытые данные - для передачи каких-то скрытых от пользователя значений
- Чек-бокс - для добавления галочки (включено, выключено)
У каждого поля есть несколько пунктов:

- Заголовок поля (заполняется)
- Подсказка внутри поля (редактируется)
- Описание поля (заполняется)
- Системное имя (редактируется - только латинские символы и цифры слитно или знак
_
)
- Значение по умолчанию (заполняется)
- Галочка, при включении которой, заполнение поля становится обязательным
- Тип поля (просто тип поля)
- Удаление поля (нажимается)
- Дублирование поля (нажимается)
- Перемещение поля (зажмите и потяните удерживая наверх или вниз)
Обычно поля достаточно создать, ввести заголовок и описание.
Для поля "Выбор" дополнительно необходимо заполнить значения, которые будут отображаться у пользователей

В чек-боксе можете заранее включить по умолчанию.

После настройки всех полей нажимаем кнопку "Применить".
Рекомендуем записать себе куда-то системные имена всех полей.
Они нам позже пригодятся.
Список основных настроек:
- Системное название формы - необязательное поле. Полезно только для блок-схемы, если вам нужно реагировать только на конкретную форму. Проверить это можно через переменную
{var:object.text}
сравнивая условием "Текстовая переменная" с названием вашего системного названия формы.
- Запустить событие - поставьте галочку, если нужно реагировать блок-схемой на заполнение формы
- Сохранить в профиль пользователя - крайне желательный пункт, который автоматически сохраняет контакты в существующего пользователя и создает нового, если такого еще нет.
- Управлять списками - включите и выберите список, если нужно добавлять пользователя в список после заполнения формы. Список для удаления не нужен в рамках данной формы.
- Перенаправление после заполнения - можете включить и добавить ссылку на бота.
Остальные настройки заполняются по желанию.
Как реагировать на заполнение формы
Для начала создаем блок события "Пользователь заполнил форму"

Если нужно проверять конкретную форму, то выберите условие "Текстовая переменная"

Сравните переменную {var:object.text}
- в которой содержится системное имя формы, непосредственно с системным именем формы, которое вы указали в форме.

А вот дальше интереснее...
- Если вы используете форму внутри MiniApp ВКонтакте или Telegram, то можете смело ставить блок "Сообщение".
- Если вам нужно написать админу, то необходимо сменить чат. Подробнее в инструкции
- Если же вы используете внешний сайт, но хотите, чтобы пользователю в бота пришло уведомление, то нам необходимо заранее знать кому именно отправлять сообщение. Здесь есть несколько вариантов, поэтому мы их опишем в отдельной инструкции.
Как вывести значения формы
Для этого нам понадобится переменная {var:object}
А если если точнее, {var:object.values.test}
Где test - это системное имя вашего поля.
Например, мы создали два поля.
Для поля с типом "Строка" мы указали системное имя url
А для поля с типом "Абзац" мы указали системное имя address

Соответственно результат этих полей будет выводиться с помощью переменных:
{var:object.values.url}
- ссылка на профиль, который указал пользователь
{var:object.values.address}
- адрес, который указал пользователь