Feat: changed bot starting

This commit is contained in:
2024-12-26 16:08:32 +03:00
parent 2882688ff4
commit 53bb09f41c
4 changed files with 25 additions and 10 deletions

10
main.py
View File

@@ -3,9 +3,8 @@ import logging
from sys import exit from sys import exit
import uvloop import uvloop
from aiogram import Bot, Dispatcher
from nwxraybot import Settings from nwxraybot import NwXrayBot, Settings
from nwxraybot.handlers import HelloHandler from nwxraybot.handlers import HelloHandler
from nwxraybot.models import User from nwxraybot.models import User
@@ -21,7 +20,6 @@ if __name__ == "__main__":
User.create_table() User.create_table()
# Start bot # Start bot
bot = Bot(token=config.bot_token.get_secret_value()) bot = NwXrayBot(config.bot_token.get_secret_value())
dp = Dispatcher() bot.include_routers(HelloHandler(bot)())
dp.include_routers(HelloHandler(bot)()) uvloop.run(bot.start(skip_updates=True))
uvloop.run(dp.start_polling(bot, skip_updates=True))

View File

@@ -1 +1,2 @@
from nwxraybot.bot import NwXrayBot
from nwxraybot.config import Settings from nwxraybot.config import Settings

View File

@@ -0,0 +1,14 @@
from aiogram import Bot, Dispatcher, Router
class NwXrayBot:
def __init__(self, token: str) -> None:
self.bot = Bot(token=token)
self.dp = Dispatcher()
def include_routers(self, *routers: Router):
for router in routers:
self.dp.include_router(router)
async def start(self, skip_updates: bool = False) -> None:
await self.dp.start_polling(self.bot, skip_updates=skip_updates)

View File

@@ -1,12 +1,14 @@
from aiogram import Bot, Router from aiogram import Router
from nwxraybot import NwXrayBot
class Handler: class Handler:
bot: Bot bot: NwXrayBot
router: Router router: Router
def __init__(self, bot: Bot) -> None: def __init__(self, bot: NwXrayBot) -> None:
assert isinstance(bot, Bot) assert isinstance(bot, NwXrayBot)
self.bot = bot self.bot = bot
self.router = Router() self.router = Router()