import discord from discord.ext import commands import skills import asyncio import yaml # ----------------------------- # Token laden # ----------------------------- with open("token.yaml", "r") as yamlfile: data = yaml.load(yamlfile, Loader=yaml.FullLoader) # ----------------------------- # Discord Intents # ----------------------------- intents = discord.Intents.default() intents.message_content = True intents.guilds = True intents.dm_messages = True bot = commands.Bot(command_prefix="!", intents=intents) # ----------------------------- # Events # ----------------------------- @bot.event async def on_ready(): await bot.tree.sync() # Slash Commands registrieren print(f"Logged in as {bot.user} ✅") @bot.event async def on_message(message): if message.author == bot.user: return try: # Commands verarbeiten if message.content.startswith(bot.command_prefix): await bot.process_commands(message) return # ----------------------------- # DM Nachrichten # ----------------------------- if isinstance(message.channel, discord.DMChannel): loop = asyncio.get_running_loop() result = await loop.run_in_executor(None, skills.process_text, message.content) if len(result) > 1900: await message.channel.send(f"```\n{result}\n```") else: await message.channel.send(result) except Exception as e: print(f"Error in on_message: {e}") await message.channel.send(f"⚠️ Fehler: {e}") # ----------------------------- # Bot starten # ----------------------------- bot.run(data[0]['token'])