Создание чатбота для Telegram без использования конструкторов
Предлагайте сроки и стоимость
ТЗ:
Все тексты, ссылки и другие данные лежат в отдельной б/д
Вся информация о пользователях, этапах прохождения и т.д. лежит в другой отдельной б/д
Бот соответствует возможностям размещения на хостинге
Авторизация.
Есть б/д, в которой список из 1000 случайных одноразовых кодов
При входе пользователя спрашиваем имя и фамилию на русском
После этого спрашиваем код авторизации
Если код верный выдаем приветственное сообщение, код закрываем, в б/д в привязке к коду фиксируем фамилию и имя и дату авторизации
Если код не верный, выдаем сообщение ошибки авторизации
Основной курс.
После приветственного сообщения пользователю предлагается ввести время получения уроков в диапазоне от 6 до 11 утра. Выводим соответствующее сообщение, принимаем переменную.
Выводим сообщение о том, что начиная с завтрашнего дня уроки начнут приходить. И у пользователя есть возможность поставить курс на паузу определенной командой. Выход из паузы возможен или продолжением с того урока, на котором остановился, или началом курса сначала.
Этот функционал реализован следующим образом.
При вводе соответствующей команды мы переспрашиваем у пользователя, действительно ли он решил поставить курс на паузу. Если он подтверждает, то отправка уроков приостанавливается и появляются 2 системные кнопки "Продолжить обучение" и "Начать обучение заново". Если продолжить на следующий день приходит следующий урок. Если начать заново прогресс стирается и курс начинается сначала.
Основной функционал ежедневная отправка уроков курса.
В выбранное пользователем время каждый день приходит 1 урок.
Количество уроков определяется автоматически количеством контента в б/д.
Урок состоит из:
- текстового блока
- ссылки на видео (хостится на vimeo) внутри текстового блока
- тестового задания из нескольких вопросов (не во всех уроках)
- прилагаемого документа (не во всех уроках)
Результаты теста каждый раз фиксируются. В зависимости от успеха прохождения тестов выдается разная обратная связь.
В конце курса у пользователя запрашивается эссе по результатам курса. Реализовано в виде отправленного текста с заданием и получения введенного текста.
После выполнения отправляем завершающий текст.
По итогам всех уроков формируется сводная информация, которая отправляется на фиксированную электронную почту.
В ней сведения о:
- дате старта курса
- использовании пауз в курсе (если были)
- результатах тестов
- текста финального задания