Kuby/kuby.py

51 lines
1.8 KiB
Python
Raw Permalink Normal View History

2026-01-01 18:48:25 +01:00
import asyncio
import os
import sys
from dotenv import load_dotenv
2026-05-20 16:43:54 +02:00
from bot import MyBot # Modification ici : on importe la classe
2026-01-01 18:48:25 +01:00
from src.logger import kuby_logger, log_performance
kuby_logger.info("🚀 Lancement du bot Kuby...")
kuby_logger.debug("Starting __main__.py execution")
# Load environment variables
kuby_logger.info("📋 Chargement des variables d'environnement...")
load_dotenv()
kuby_logger.debug("Environment variables loaded")
# Get Discord token
TOKEN = os.getenv("DISCORD_TOKEN")
kuby_logger.debug(f"Token retrieved from environment: {'***' if TOKEN else 'None'}")
if not TOKEN:
kuby_logger.critical("❌ Erreur: Token Discord non trouvé dans les variables d'environnement!")
kuby_logger.critical("Assurez-vous d'avoir un fichier .env avec DISCORD_TOKEN=votre_token")
sys.exit(1)
kuby_logger.info("✅ Token Discord chargé avec succès")
@log_performance
async def main():
kuby_logger.info("🔄 Démarrage de la connexion Discord...")
try:
2026-05-20 16:43:54 +02:00
# Modification majeure : l'objet bot est instancié ici, au sein de la boucle active
bot = MyBot()
await bot.do_async_setup()
2026-05-06 17:07:09 +02:00
kuby_logger.info("🔗 Connexion établie avec Discord...")
await bot.start(TOKEN)
2026-01-01 18:48:25 +01:00
except KeyboardInterrupt:
kuby_logger.info("🛑 Bot shutdown requested by user")
except Exception as e:
kuby_logger.critical(f"❌ Erreur fatale lors du démarrage : {e}", exc_info=True)
raise
if __name__ == "__main__":
kuby_logger.info("🚀 Lancement du bot Kuby...")
try:
asyncio.run(main())
except KeyboardInterrupt:
kuby_logger.info("🛑 Bot shutdown complete")
except Exception as e:
kuby_logger.critical(f"❌ Erreur fatale: {e}", exc_info=True)
sys.exit(1)