User Tools

Site Tools


chat-bots:dispatcher_klaviatury

This is an old revision of the document!


Dispatcher, клавиатуры

Д/З

Reading assignment (прочитать и понять)

Практика (для зачета)

Дорабатываем бот из прошлого Д/з (новый создавать не нужно).

Требуется реализовать модули:

  1. dispatcher.py, содержащий класс Dispatcher
  2. long_polling.pu, содержащий функцию start_long_polling(). Эта функция принимает на вход объект типа Dispatcher и запускает бесконечный цикл получения апдейтов от Telegram. Так же контролирует обновление offset для getUpdates.
  3. handler.py с базовым классом Handler (интерфейс ABC)
  4. handlers/message_text_echo.py с классом MessageTextEcho(Handler), который обрабатывает текстовые апдейты. Поведение — отправить эхо сообщение (как в прошлом Д/з).
  5. handlers/database_logger.py с классом DatabaseLogger(Handler), который обрабатывает все входящие апдейты. Поведение — записать апдейт в таблицу telegram_updates (как в прошлом Д/з). Важно: данный хэндлер даёт сигнал диспетчеру на ПРОДОЛЖЕНИЕ обработки.
  6. handlers/message_photo_echo.py с классом MessagePhotoEcho(Handler), который обрабатывает апдейты с фото. Поведение — отправить эхо сообщение с той же картинкой (отправить картинку с максимальным в байтах размером)

Свяжитесь в ТГ личку с преподавателем для выбора удобного времени сдачи.

Процесс сдачи:

  1. (студент): напишите в ТГ личку преподавателю одно сообщение, содержащее текст:
    1. Для сдачи Д/з Dispatcher, бот запущен
    2. Ссылка на гит с исходным кодом бота
    3. Ссылка на ваш бот
  2. (преподаватель) отправляем вашему боту тестовые сообщения, проверяет что пришли эхо сообщения.
  3. (преподаватель) пишем вам в ТГ личку запрос на скриншоты терминала с запущенным ботом и результат выполнения SQL запроса
  4. (студент) сделать запрошенные скриншоты, отправить в личку преподавателю
  5. (преподаватель) проверяет скриншоты, при необходимости задает дополнительные вопросы.
  6. (преподаватель) отправляет с ТГ личку студенту сообщение “Фамилия ✅ 4️⃣”
  7. (студент) заходит на страницу успеваемости и проверяет корректность своей успеваемости.
chat-bots/dispatcher_klaviatury.1760455474.txt.gz · Last modified: by olegsklyarov