Add startup handler
This commit is contained in:
@@ -1 +1,21 @@
|
|||||||
pass
|
from rich import print
|
||||||
|
|
||||||
|
|
||||||
|
async def runner():
|
||||||
|
from .common import dp, bot
|
||||||
|
|
||||||
|
from . import handlers
|
||||||
|
|
||||||
|
dp.include_router(
|
||||||
|
handlers.router
|
||||||
|
)
|
||||||
|
|
||||||
|
await bot.delete_webhook(drop_pending_updates=True)
|
||||||
|
await dp.start_polling(bot)
|
||||||
|
|
||||||
|
|
||||||
|
def main():
|
||||||
|
import asyncio
|
||||||
|
|
||||||
|
print('Starting...')
|
||||||
|
asyncio.run(runner())
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
from . import main
|
||||||
|
|
||||||
|
if __name__ == '__main__':
|
||||||
|
main()
|
||||||
|
|||||||
0
anymusicbot/callbacks/__init__.py
Normal file
0
anymusicbot/callbacks/__init__.py
Normal file
0
anymusicbot/callbacks/factories/__init__.py
Normal file
0
anymusicbot/callbacks/factories/__init__.py
Normal file
7
anymusicbot/common.py
Normal file
7
anymusicbot/common.py
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
from aiogram import Bot, Dispatcher
|
||||||
|
from .utils.config import config
|
||||||
|
|
||||||
|
bot = Bot(token=config.telegram.bot_token)
|
||||||
|
dp = Dispatcher()
|
||||||
|
|
||||||
|
__all__ = ['bot', 'dp', 'config']
|
||||||
0
anymusicbot/filters/__init__.py
Normal file
0
anymusicbot/filters/__init__.py
Normal file
9
anymusicbot/handlers/__init__.py
Normal file
9
anymusicbot/handlers/__init__.py
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
from aiogram import Router
|
||||||
|
from . import initialize
|
||||||
|
|
||||||
|
|
||||||
|
router = Router()
|
||||||
|
|
||||||
|
router.include_routers(
|
||||||
|
initialize.router,
|
||||||
|
)
|
||||||
1
anymusicbot/handlers/initialize/__init__.py
Normal file
1
anymusicbot/handlers/initialize/__init__.py
Normal file
@@ -0,0 +1 @@
|
|||||||
|
from .initializer import router
|
||||||
10
anymusicbot/handlers/initialize/initializer.py
Normal file
10
anymusicbot/handlers/initialize/initializer.py
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
from aiogram import Router, Bot
|
||||||
|
from rich import print
|
||||||
|
|
||||||
|
|
||||||
|
router = Router()
|
||||||
|
|
||||||
|
|
||||||
|
@router.startup()
|
||||||
|
async def startup(bot: Bot):
|
||||||
|
print(f'[green]Started as[/] @{(await bot.me()).username}')
|
||||||
0
anymusicbot/keyboards/__init__.py
Normal file
0
anymusicbot/keyboards/__init__.py
Normal file
0
anymusicbot/keyboards/inline/__init__.py
Normal file
0
anymusicbot/keyboards/inline/__init__.py
Normal file
0
anymusicbot/middlewares/__init__.py
Normal file
0
anymusicbot/middlewares/__init__.py
Normal file
0
anymusicbot/modules/__init__.py
Normal file
0
anymusicbot/modules/__init__.py
Normal file
0
anymusicbot/utils/__init__.py
Normal file
0
anymusicbot/utils/__init__.py
Normal file
4
anymusicbot/utils/config/__init__.py
Normal file
4
anymusicbot/utils/config/__init__.py
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
from ._config import Config
|
||||||
|
|
||||||
|
|
||||||
|
config = Config()
|
||||||
22
anymusicbot/utils/config/_config.py
Normal file
22
anymusicbot/utils/config/_config.py
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
import tomllib
|
||||||
|
|
||||||
|
|
||||||
|
class Config(dict):
|
||||||
|
def __init__(self, _config: dict = None):
|
||||||
|
try:
|
||||||
|
if _config is None:
|
||||||
|
config = tomllib.load(open('config.toml', 'rb'))
|
||||||
|
|
||||||
|
super().__init__(**config)
|
||||||
|
else:
|
||||||
|
super().__init__(**_config)
|
||||||
|
|
||||||
|
except FileNotFoundError:
|
||||||
|
super().__init__()
|
||||||
|
|
||||||
|
def __getattr__(self, item):
|
||||||
|
return (
|
||||||
|
self.get(item)
|
||||||
|
if type(self.get(item)) is not dict
|
||||||
|
else Config(self.get(item))
|
||||||
|
)
|
||||||
@@ -8,6 +8,7 @@ readme = "README.md"
|
|||||||
[tool.poetry.dependencies]
|
[tool.poetry.dependencies]
|
||||||
python = "^3.11"
|
python = "^3.11"
|
||||||
aiogram = "^3.1.1"
|
aiogram = "^3.1.1"
|
||||||
|
rich = "^13.6.0"
|
||||||
|
|
||||||
|
|
||||||
[build-system]
|
[build-system]
|
||||||
|
|||||||
Reference in New Issue
Block a user