Anwendung reagiert nicht:(
Ich wollte die neuen Commands bei meinem Bot testen doch sie funktionieren nicht...keine Errors nichts bot online Status auch gut aber die Commands = 👎. Kann mir jemand helfen?


16 Replies
:hack: - Danke für deine Frage!
› Unsere Community freut sich schon, dir bei deinem Problem weiterzuhelfen! Sei so lieb und unterstütze die Personen welche dir weitergeholfen in dem du die Antwort welche das Problem lösen konnte akzeptierst.
:stackoverflow: - Ich habe folgende Stackoverflow-Frage gefunden, die dir weiterhelfen könnte:
https://stackoverflow.com/questions/68764832/python-application-not-responding- :accept: = Akzeptiert die Antwort und markiert dein Problem als gelöst. Alternativ kannst du auch
/solved
verwenden, falls du es selbst herausgefunden hast.
Pushe deinen Post für mehr Aufmerksamkeit mit /push
.
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀Hi, hast du vielleicht einen Code für uns (am besten dann ``` am Anfang und am Ende zur besseren Lesbarkeit platzieren)?
Schau außerdem, ob du alle benötigten Intents auch im Developer Portal aktiviert hast
import discord
from discord.ext import commands
from datetime import datetime
# Create a new bot instance
intents = discord.Intents.default()
intents.members = True
bot = commands.Bot(command_prefix='!', intents=intents)
# Define a moderation panel with buttons
class ModerationPanel(discord.ui.View):
def __init__(self):
super().__init__()
self.add_item(discord.ui.Button(label='Kick', style=discord.ButtonStyle.red, custom_id='kick'))
self.add_item(discord.ui.Button(label='Ban', style=discord.ButtonStyle.red, custom_id='ban'))
self.add_item(discord.ui.Button(label='Mute', style=discord.ButtonStyle.gray, custom_id='mute'))
# Define a slash command for the moderation panel
@bot.slash_command(name='moderate', description='Open the moderation panel')
async def moderate(ctx):
await ctx.respond('Moderation Panel', view=ModerationPanel())
# Define a slash command for user info
@bot.slash_command(name='userinfo', description='Get information about a user')
async def userinfo(ctx, user: discord.Member = None):
if user is None:
user = ctx.author
embed = discord.Embed(title=f'User Information - {user.name}', color=user.color)
embed.set_thumbnail(url=user.avatar_url)
embed.add_field(name='Username', value=user.name, inline=False)
embed.add_field(name='Discriminator', value=user.discriminator, inline=False)
embed.add_field(name='ID', value=user.id, inline=False)
embed.add_field(name='Created At', value=datetime.strftime(user.created_at, '%Y-%m-%d %H:%M:%S'), inline=False)
embed.add_field(name='Joined At', value=datetime.strftime(user.joined_at, '%Y-%m-%d %H:%M:%S'), inline=False)
embed.add_field(name='Roles', value=', '.join([role.name for role in user.roles]), inline=False)
embed.add_field(name='Permissions', value=', '.join([perm for perm, value in user.guild_permissions if value]), inline=False)
await ctx.respond(embed=embed)
Bei Dev Portal sollte alles gut sein.Hab ich einen Part übersehen oder wo genau startet der Bot und loggt sich ein (bot.run etc.)?
Yannic hat hierzu btw auch noch ein Tutorial erstellt, falls dich Slash Commands weiter interessieren
Razzer ~ Coding
YouTube
DER ERSTE BEFEHL & BOT-STATUS 🤖 DISCORD-BOT ENTWICKLUNG (Teil 2)
💕 Erhalte Hilfe für deine Codingfragen: https://discord.gg/bl4cklist
⮡ Lerne außerdem neue Freunde kennen, sprich über deine Probleme und mehr!
💬 ⇾ In dem heutigen Video bringe ich euch bei wir ihre euren ersten eigenen Slashbefehl programmiert, welcher Strings, Ints & Listen als (auch optionales) Argument akzeptiert - außerdem entwickeln wir...
await ctx.respond(embed=embed)
# Define a slash command for bot status
@bot.slash_command(name='botstatus', description='Get the bot status')
async def botstatus(ctx):
embed = discord.Embed(title='Bot Status', color=0x00ff00)
embed.add_field(name='Latency', value=f'{bot.latency * 1000:.2f}ms', inline=False)
embed.add_field(name='Guilds', value=len(bot.guilds), inline=False)
embed.add_field(name='Users', value=len(bot.users), inline=False)
embed.add_field(name='Commands', value=len(bot.commands), inline=False)
embed.add_field(name='Uptime', value=datetime.now() - bot.start_time, inline=False)
await ctx.respond(embed=embed)
# Define event handlers for button interactions
@bot.event
async def on_interaction(interaction):
if interaction.custom_id == 'kick':
# Kick the user
await interaction.response.send_message('Kicked!')
elif interaction.custom_id == 'ban':
# Ban the user
await interaction.response.send_message('Banned!')
elif interaction.custom_id == 'mute':
# Mute the user
await interaction.response.send_message('Muted!')
# Define event handler for bot startup
@bot.event
async def on_ready():
bot.start_time = datetime.now()
print(f'Logged in as {bot.user.name} (ID: {bot.user.id})')
await bot.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name='Netflix'))
# Run the bot
bot.run('touken')
das wäre noch der RestHast du in deinem Code in der letzten Zeile auch "touken" stehen? Würde das zu "token" ändern.
Schaue mir den Rest gleich an
jo hab ich zum spass wollte denn token heute mal nicht reinposten^^
ey bot läuft jetzt
Wie haste es gelöst? Wollte gerade den Code bissl umschreiben xD
pip install discord-py-slash-command
deswegen ist es hat es nicht funktioniert:check:Ah ja gut, darauf hätte man auch früher kommen können.. xD Ich hätte es sonst, ohne etwas spezielles zu installieren, mit "app_commands" & "@bot.tree.command", statt "@bot.slash.command" erledigt. Aber wenns so klappt, passts ja.
Einen Tipp hätte ich noch: Pack am besten nicht deinen ganzen Bot mit seinen Commands in eine Datei, sondern teile deinen Code in verschiedene Dateien, um die Performance & Übersicht zu verbessern
danke für denn tipp sollte ich auch andere namen verwenden für die files weil 4 mal main.py fände ich jetzt nicht so übersichtlich
Ich kenne deine Dateistruktur jetzt nicht, aber 4x "main.py" klingt tatsächlich nicht sehr übersichtlich, da "main.py" eigentlich deine (übersetzt) Hauptdatei sein sollte, wo du z.B. den Botclient erstellst und Intents festlegst, mehr aber auch nicht
ja danke trotzdem das du dir zeit genommen hast:pepe_love:
👍
›
✅
- Antwort akzeptiert: Der Ersteller dieser Frage hat deine Antwort akzeptiert (+25 Karma)