Page 1 of 1

Discord.py Slash -Befehl

Posted: 11 Apr 2025, 12:10
by Anonymous
Ich habe eine Funktion gemacht, die einen Text mit klassischen Befehlen wiederholt. Ich wollte es mit dem Slash -Befehl schaffen, aber es hat nicht funktioniert. Ehrlich gesagt, ich war verwirrt und die Dokumentation von Discord. Wenn einer oder beide nicht sind, ignoriert es sie. Dies ist für den Kanal: < /p>

Code: Select all

async def echo(ctx, *args):
#If a command is not followed with a text
if not args:
await ctx.send("Please provide some text for me to echo dummy.")
return

#Channel mention
if args[0].startswith(""):
channel_id = int(args[0][2:-1])
channel = client.get_channel(channel_id)

#If the channel is not valid or doesn't exist
if not channel:
await ctx.send("Invalid channel mention.")
return

args = args[1:]
else:
channel = ctx.channel
< /code>
Der Rest des Code ist für das Zeitargument: < /p>
#Check if there is a time argument
time_match = re.match(r"(\d+)(h|m)", args[0])
if time_match:
time_delta = timedelta(hours=int(time_match.group(1))) if time_match.group(2) == "h" else timedelta(minutes=int(time_match.group(1)))
await ctx.send(f"I will echo the message in {time_delta}.")
await asyncio.sleep(time_delta.total_seconds())

args = args[1:]
else:
time_delta = timedelta()

message = " ".join(args)
await channel.send(message)
Ich habe festgestellt, dass das Umwandeln viel Verständnis erforderlich ist, und ich bin ein Anfänger bei Python.