Heim >Backend-Entwicklung >Python-Tutorial >Warum funktionieren meine Discord.py 2.0-Befehle nicht und wie kann ich das Problem beheben?

Warum funktionieren meine Discord.py 2.0-Befehle nicht und wie kann ich das Problem beheben?

DDD
DDDOriginal
2024-12-06 17:37:11215Durchsuche

Why Aren't My Discord.py 2.0 Commands Working, and How Do I Fix It?

Discord.py 2.0-Befehlsaufrufproblem: Keine Fehlermeldung

Problem:

Wann Bei der Migration von Discord.py 1.7.3 auf 2.0 werden Befehle in 2.0 nicht fehlerfrei ausgeführt Nachrichten, obwohl sie in 1.7.3 korrekt funktionieren.

Grund:

Um sicherzustellen, dass Nachrichteninhalte empfangen werden, erfordert Discord.py 2.0 eine explizite Aktivierung von Absichten.

Lösung:

1. Aktivieren Sie Intents im Discord-Entwicklerportal:

  • Melden Sie sich beim Discord-Entwicklerportal an.
  • Wählen Sie Ihre Anwendung aus.
  • Navigieren Sie zum Abschnitt „Bot“. .
  • Aktivieren Sie „MESSAGE CONTENT INTENT“ unter „Intents“. Tab.

2. Fügen Sie Absichten zum Bot im Discord.py-Code hinzu:

  • Importieren Sie die Intents-Klasse aus Discord.
  • Erstellen Sie ein Intents-Objekt und setzen Sie intents.message_content auf True.
  • Initialisieren Sie den Bot mit Absichten als Argument.

3. Aktualisieren Sie den Code:

  • Fügen Sie die folgende Zeile oben in Ihrem Discord.py-Skript hinzu:
intents = discord.Intents.default()
intents.message_content = True
  • Initialisieren Sie den Bot mit Absichtsargument:
bot = commands.Bot(command_prefix='$', intents=intents, help_command=None)

Vollständig Code:

import discord
from discord.ext import commands

intents = discord.Intents.default()
intents.message_content = True

bot = commands.Bot(command_prefix='$', intents=intents, help_command=None)

@bot.event
async def on_ready():
    print('bot is ready')

@bot.command(name='test1', aliases=['t1'])
async def test1(ctx):
    print('test command')

with open('token.txt', 'r') as f: TOKEN = f.read()
bot.run(TOKEN)

Durch die Implementierung dieser Schritte können Sie die Verarbeitung von Nachrichteninhalten aktivieren und die Befehlsfunktionalität in Discord.py 2.0 wiederherstellen.

Das obige ist der detaillierte Inhalt vonWarum funktionieren meine Discord.py 2.0-Befehle nicht und wie kann ich das Problem beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn