User Tools

Site Tools


chat-bots:aiogram_-_uskorjaem_v_razy_razrabotku_telegram_botov

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
chat-bots:aiogram_-_uskorjaem_v_razy_razrabotku_telegram_botov [2025/12/11 11:26] – aiogram docs olegsklyarovchat-bots:aiogram_-_uskorjaem_v_razy_razrabotku_telegram_botov [2025/12/11 11:41] (current) – [Практика (для зачета)] olegsklyarov
Line 16: Line 16:
 ==== Практика (для зачета) ==== ==== Практика (для зачета) ====
  
-  - Выполнить упражнение по сравнению sync VS. async версий http и SQL запросов. Пример кода тут https://github.com/olegsklyarov/unn-sync-async-demo +Реализовать простейший echo-бот с использованием aiogram
-  - Добавить логирование времени выполнения всех HTTP и SQL запросов в pizza bot. +
-  - Перевести pizza bot на асинхронный вариант: весь код бота должен работать в Event loop, запускаться через ''asyncio.run()''. Добавить везде где необходимо async / await. Все HTTP и SQL запрос должны быть асинхронными, и использованием aiohttp и asyncpg соответственно. +
-  - Перевести pytest тесты на асинхронную версию +
-  - Залейте в docker hub новую асинхронную версию+
  
 +  - Используем свой github репозиторий, в котором делали предыдущие Д/з (Pizza Bot и т.д.)
 +  - Создаем новый git бранч c названием ''12-aiogram'', переключаем git на эту новую ветку
 +  - Удаляем все файлы и каталоги от Pizza Bot: domain, infrastructure, tests, handlers и т.п. Оставляем только структуру папок, Dockerfile, Makefile и т.п.
 +  - В requirements.txt добавляем aiogram, удаляем неиспользуемые библиотеки (например asyncpg, aiohttp)
 +  - Весь код echo бота реализуем в одном файле %%bot/__main__.py%%
 +  - Бот должен быть асинхронным (использовать asyncio), обновления получать при помощи Long Polling встроенный в aiogram. Использовать один Dispatcher для обработки событий и middleware.
 +  - Добавить обработчик для message.text → в ответ на этой событие, бот отвечает тем же текстом, что получил
 +  - Добавить обработчик для message.photo → в ответ бот отправляет ту же картинку, что получил
 +  - Добавить middleware для логирования в консоль тела всех без исключения updates.
 +
 +P.S. смотри пример реализации в видеозаписи с лекции.
  
 ===Процесс сдачи=== ===Процесс сдачи===
Line 27: Line 34:
   - (студент): напишите в ТГ [[https://t.me/olegsklyarov|преподавателю]] **одно** сообщение, содержащее текст:   - (студент): напишите в ТГ [[https://t.me/olegsklyarov|преподавателю]] **одно** сообщение, содержащее текст:
     - ''Для сдачи Д/з aiogram''     - ''Для сдачи Д/з aiogram''
-    - Ссылка на гит с исходным кодом бота+    - Ссылка на гит с исходным кодом бота, сразу на нужный git-бранч (''12-aiogram'')
   - (преподаватель) проверяет наличие зеленой галочки на гитхабе, делает код ревью, при необходимости задает дополнительные вопросы.   - (преподаватель) проверяет наличие зеленой галочки на гитхабе, делает код ревью, при необходимости задает дополнительные вопросы.
   - (преподаватель) отправляет с ТГ личку студенту сообщение "ФИО ✅ 🔟+2️⃣"   - (преподаватель) отправляет с ТГ личку студенту сообщение "ФИО ✅ 🔟+2️⃣"
chat-bots/aiogram_-_uskorjaem_v_razy_razrabotku_telegram_botov.1765441594.txt.gz · Last modified: by olegsklyarov