Приветствую!
Какая основная задача:
Сделать компонент опросов, который имеет графический интерфейс с перетаскиваемыми и соединяемыми блоками.
Каждый опрос - это сущность "форма".
У неё есть шаги.
Вопросы можно засовывать произвольно - по 1 в каждый шаг, по несколько в один шаг или все в один шаг.
У формы есть два режима работы: Стандартный и ИИ.
В стандартном шаги выводятся по очереди по мере заполнения.
В ИИ форма выводится в виде чата.
Все данные которые надо запросить передаются ИИ и он в процессе общения их запрашивает.
По завершению опроса данные сохраняются в БД и отправляются в CRM.
По поводу возможных полей, набор стандартный:
Радиокнопки, селект, чекбоксы, произвольное текстовое поле (можно отдельным типом сделать поле телефона для правильной валидации данных).