chat-bots:dispatcher_klaviatury
This is an old revision of the document!
Table of Contents
Dispatcher, клавиатуры
Д/З
Reading assignment (прочитать и понять)
- Паттерн Observer (Наблюдатель) https://refactoring.guru/ru/design-patterns/observer (нужен VPN)
- abc — Abstract Base Classes
Практика (для зачета)
Дорабатываем бот из прошлого Д/з (новый создавать не нужно).
Требуется реализовать модули:
dispatcher.py, содержащий классDispatcherlong_polling.pu, содержащий функциюstart_long_polling(). Эта функция принимает на вход объект типаDispatcherи запускает бесконечный цикл получения апдейтов от Telegram. Так же контролирует обновлениеoffsetдляgetUpdates.handler.pyс базовым классомHandler(интерфейс ABC)handlers/message_text_echo.pyс классомMessageTextEcho(Handler), который обрабатывает текстовые апдейты. Поведение - отправить эхо сообщение (как в прошлом Д/з).handlers/database_logger.pyс классомDatabaseLogger(Handler), который обрабатывает все входящие апдейты. Поведение - записать апдейт в таблицуtelegram_updates(как в прошлом Д/з). Важно: данный хэндлер даёт сигнал диспетчеру на ПРОДОЛЖЕНИЕ обработки.handlers/message_photo_echo.py с классомMessagePhotoEcho(Handler)'', который обрабатывает апдейты с фото. Поведение - отправить эхо сообщение с той же картинкой (отправить картинку с максимальным в байтах размером)
chat-bots/dispatcher_klaviatury.1760454226.txt.gz · Last modified: by olegsklyarov
