34 lines
838 B
Python
34 lines
838 B
Python
import asyncio
|
|
|
|
from aiogram import Bot, Dispatcher
|
|
from aiogram.client.default import DefaultBotProperties
|
|
from aiogram.enums import ParseMode
|
|
from aiogram_dialog import setup_dialogs
|
|
|
|
from app.bot.dialogs.flows import dialogs_router
|
|
from app.bot.handlers.commands import commands_router
|
|
from app.bot.middlewares import DbSessionMiddleware, GetUserMiddleware
|
|
from config.config import settings
|
|
|
|
bot = Bot(
|
|
token=settings.bot_token,
|
|
default=DefaultBotProperties(parse_mode=ParseMode.MARKDOWN_V2),
|
|
)
|
|
dp = Dispatcher()
|
|
|
|
|
|
async def main():
|
|
setup_dialogs(dp)
|
|
|
|
dp.update.outer_middleware(DbSessionMiddleware())
|
|
dp.update.outer_middleware(GetUserMiddleware())
|
|
|
|
dp.include_router(commands_router)
|
|
dp.include_router(dialogs_router)
|
|
|
|
await dp.start_polling(bot)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(main())
|