Создаем анкету (опрос), пользователь должен пройти последовательность шагов, где Handler сообщает системе, каким должен быть следующий шаг. В зависимости от ответа, последовательность может меняться. Для этого используется обработчик ConversationHandler — позволяет строить (описывать) диалоги со сложной логикой. У каждого ConversationHandler есть: entry_points — запускает данный диалог, точка входа. states — шаги диалога, у каждого шага есть название и обработчик на который этот шаг реагирует. fallbacks — выход из диалога или можно использовать при некорректном вводе информации пользователем...
В файле mongodb.py создадим функцию save_user_anketa() с помощью которой будем сохранять или обновлять, информацию в базе данных полученную из анкет. Созданную функцию импортируем в файл handlers.py. Для передачи результатов опроса в базу данных, внесем изменения в функции anketa_comment() и anketa_exit_comment() которые находятся в файле handlers.py. После чего запустим Telegram бота и пройдем анкетирование (опрос). В первый раз, пользователь прошел опрос - поставил оценку 4 и не написал комментарий, при втором прохождении опроса - поставил оценку 5 и написал комментарий...