2024-02-24 23:59:26 +03:00
|
|
|
from routers import include_routers
|
2024-07-07 21:25:10 +03:00
|
|
|
from src.core.logger import log, setup_logger
|
2024-02-12 10:55:14 +03:00
|
|
|
from src.modules.standard.config.config import get_telegram_token
|
2024-04-25 15:57:37 +03:00
|
|
|
from src.modules.standard.database.db_api import connect_database, create_tables
|
2024-07-07 21:25:10 +03:00
|
|
|
import asyncio
|
2023-11-30 16:23:37 +03:00
|
|
|
from aiogram import Bot, Dispatcher
|
|
|
|
|
2024-02-05 15:51:50 +03:00
|
|
|
|
2024-07-07 21:25:10 +03:00
|
|
|
async def main():
|
|
|
|
bot = None
|
|
|
|
database = None
|
|
|
|
setup_logger()
|
|
|
|
|
2023-11-30 16:23:37 +03:00
|
|
|
try:
|
2024-07-07 21:25:10 +03:00
|
|
|
bot = Bot(token=get_telegram_token())
|
2024-02-12 10:55:14 +03:00
|
|
|
database, path = connect_database()
|
|
|
|
database.connect()
|
|
|
|
create_tables(database)
|
2023-12-10 19:04:17 +03:00
|
|
|
|
2023-11-30 16:23:37 +03:00
|
|
|
dp = Dispatcher()
|
2024-02-12 10:55:14 +03:00
|
|
|
await include_routers(dp)
|
2023-11-30 16:23:37 +03:00
|
|
|
await dp.start_polling(bot)
|
2024-07-07 21:25:10 +03:00
|
|
|
except Exception as e:
|
|
|
|
log(e)
|
2023-11-30 16:23:37 +03:00
|
|
|
finally:
|
2024-07-07 21:25:10 +03:00
|
|
|
if bot is not None:
|
|
|
|
await bot.session.close()
|
|
|
|
if database is not None:
|
|
|
|
database.close()
|
2023-11-30 16:23:37 +03:00
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
2024-07-07 21:25:10 +03:00
|
|
|
asyncio.run(main())
|