init commit

This commit is contained in:
2025-12-10 22:09:31 +09:00
commit b79adf1c69
361 changed files with 47414 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
"""Main application entry point"""
import asyncio
import logging
from aiogram import Bot, Dispatcher
from aiogram.fsm.storage.memory import MemoryStorage
from app.core.config import get_settings
from app.bot import register_handlers
from app.db.database import engine, Base
# Configure logging
logging.basicConfig(
level=logging.INFO,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
)
logger = logging.getLogger(__name__)
async def main():
"""Main bot application"""
settings = get_settings()
# Create database tables
Base.metadata.create_all(bind=engine)
logger.info("Database tables created")
# Initialize bot and dispatcher
bot = Bot(token=settings.bot_token)
storage = MemoryStorage()
dp = Dispatcher(storage=storage)
# Register handlers
register_handlers(dp)
logger.info("Handlers registered")
# Start polling
logger.info("Bot polling started")
try:
await dp.start_polling(bot, allowed_updates=dp.resolve_used_update_types())
finally:
await bot.session.close()
if __name__ == "__main__":
asyncio.run(main())