"""
Botni POLLING rejimida ishga tushirish.
Bu rejim VPS/server (root/SSH kirish, doimiy ishlaydigan jarayonlarga ruxsat
bor) uchun mo'ljallangan. Oddiy (shared) cPanel hostingda ishlamaydi —
o'sha holat uchun webhook_app.py + passenger_wsgi.py dan foydalaning
(README.md dagi "cPanel (shared hosting)" bo'limiga qarang).
"""
import asyncio
import logging

import config
from bot_factory import create_bot_and_dispatcher

logging.basicConfig(level=logging.INFO)


async def main():
    if not config.BOT_TOKEN:
        raise RuntimeError(
            "BOT_TOKEN topilmadi. .env faylida yoki muhit o'zgaruvchisida BOT_TOKEN ni belgilang."
        )
    if not config.ADMIN_IDS:
        logging.warning(
            "ADMIN_IDS bo'sh — hech kim admin panelga kira olmaydi. "
            ".env faylida ADMIN_IDS ni belgilang."
        )

    bot, dp = create_bot_and_dispatcher()

    await bot.delete_webhook(drop_pending_updates=True)
    await dp.start_polling(bot)


if __name__ == "__main__":
    asyncio.run(main())
