/
242zulus
/
BotConcierge
Обзор
Документация
Войти
/
242zulus
/
BotConcierge
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
app/main.py
43 строки
1 KB
charonbabyPlus
add tasks list
04 май 2026, 19:11
04 май 2026, 19:11
5fc14ef
Код
Авторство
О чём код?
from contextlib import asynccontextmanager from aiogram.types import BotCommand, Update from fastapi import FastAPI, Request from app.bot.bot import create_bot from app.bot.dp import create_dispatcher from app.config import settings from app.logging_config import setup_logging setup_logging() bot = create_bot(settings.bot_token) dp = create_dispatcher() BOT_COMMANDS = [ BotCommand(command="start", description="Стартануть"), BotCommand(command="help", description="Помощь о боте"), ] @asynccontextmanager async def lifespan(app: FastAPI): await bot.set_my_commands(BOT_COMMANDS) await bot.set_webhook( settings.webhook_url, allowed_updates=dp.resolve_used_update_types(), ) try: yield finally: await bot.delete_webhook() await bot.session.close() app = FastAPI(lifespan=lifespan) @app.post("/webhook") async def webhook(request: Request): update = Update.model_validate(await request.json(), context={"bot": bot}) await dp.feed_update(bot, update) return {"ok": True}