ACLClouds
ACLClouds

Häufige Discord-Bot-Fehler und wie Sie sie lesen

Deaktivierte Intents (4014), Ratenlimit (429), EAI_AGAIN, ungültiger Token: was jeder Fehler bedeutet und was Sie zuerst prüfen.

Die meisten Ausfälle eines Discord-Bots lassen sich auf vier Fehler zurückführen. Jeder hat eine genaue Ursache, und die Reihenfolge der Prüfung zählt: Token und Intents kontrollieren Sie in zwei Minuten, das Ratenlimit verlangt einen Blick auf die Sendeschleife, und EAI_AGAIN betrifft das Netzwerk statt Ihres Codes.

  • Fehler 4014: Ein privilegierter Intent wird angefordert, ist aber im Portal nicht aktiviert.
  • Fehler 429: zu viele Sendevorgänge zu schnell. Warten Sie die von Discord genannte Zeit ab.
  • EAI_AGAIN: Ein DNS-Auflösungsfehler auf Netzwerkseite, nicht in Ihrem Code.
  • Ungültiger Token: LoginFailure oder „invalid token“, in der Variable zu korrigieren.

Deaktivierte Intents: Fehler 4014

Der Fehler 4014 (Disallowed intents) bedeutet, dass der Bot einen privilegierten Intent anfordert, etwa das Lesen von Nachrichteninhalten, ohne ihn im Entwicklerportal aktiviert zu haben. Discord verweigert dann die Verbindung.

  • Öffnen Sie das Entwicklerportal, Bereich Bot, und aktivieren Sie die privilegierten Intents, die Ihr Code nutzt.
  • Fordern Sie im Code nur die Intents an, die Sie brauchen: Jeder überflüssige Intent ist eine weitere Freigabe, die aktiviert werden muss.
  • Starten Sie den Bot nach einer Änderung neu. Ein Neustart ohne Änderung erzeugt denselben Fehler.

Ratenlimit: Fehler 429

Der Code 429 (Too Many Requests) bedeutet, dass der Bot das von Discord erlaubte Tempo überschritten hat, oft weil er in einer Schleife Nachrichten sendet oder ändert. Die Antwort nennt dann die Wartezeit.

  • discord.js und discord.py warten bei den meisten Anfragen selbst, aber eine endlose Sendeschleife hört nie auf.
  • Verteilen Sie wiederholte Aktionen: eine Nachricht alle paar Sekunden ist besser als ein Schwall.
  • Respektieren Sie die genannte Wartezeit und starten Sie den Bot in dieser Zeit nicht in einer Schleife neu.

Netzwerk: EAI_AGAIN und ECONNRESET

EAI_AGAIN bedeutet, dass der Domainname von Discord nicht aufgelöst werden konnte. ECONNRESET bedeutet, dass die Verbindung mittendrin abgebrochen wurde. Diese Fehler kommen aus dem Netzwerk zwischen Server und Discord, nicht aus einer Zeile Ihres Codes.

  • Tritt der Fehler sporadisch auf, versuchen die meisten Bibliotheken die Verbindung mit wachsendem Abstand erneut.
  • DNS- oder Verbindungsunterbrechungen sind bekannt und werden behoben. Ist Ihr Code korrekt und der Fehler bleibt, kontaktieren Sie den Support mit der genauen Uhrzeit.
  • Ein einzelner Fehler ist oft vorübergehend: Warten Sie ein paar Minuten, bevor Sie etwas ändern.

Ungültiger Token: LoginFailure

Ein ungültiger, abgelaufener oder zurückgesetzter Token lässt die Verbindung schon beim Start scheitern. Die Meldung lautet oft Improper token has been passed in Python oder An invalid token was provided in Node.js.

  • Prüfen Sie, dass die Variable den Token enthält, ohne überflüssige Leerzeichen oder Anführungszeichen.
  • Wurde der Token im Portal zurückgesetzt, funktioniert der alte Wert nicht mehr: Kopieren Sie den neuen.
  • Fügen Sie den Token nie in eine Nachricht ein, um ihn prüfen zu lassen.

Warum ACLClouds für Ihre Bots

Fehler bei Token und Intents beheben Sie im Code und im Discord-Portal. Der kostenlose Tarif gibt Ihrem Bot einen eigenen Bereich, in dem Sie den Code korrigieren und neu bereitstellen können.

  • Kostenloser Tarif: 1 Bot, 315 MB RAM, 0,25 vCPU, 715 MB Speicher.
  • SFTP-Zugang pro Bot auf Port 2222, um den Code zu korrigieren und neu hochzuladen.
  • ffmpeg, yt-dlp und deno in den Node.js- und Python-Images enthalten.

Häufig gestellte Fragen

Kann ein Bot wegen eines 429-Fehlers gesperrt werden?

Ein 429-Fehler ist eine vorübergehende Grenze, keine Strafe. Wiederholtes Ignorieren der Wartezeiten kann aber auf Discord-Seite zu einer längeren Sperre führen. Korrigieren Sie die Schleife.

Mein Bot war gestern online und ist heute nicht mehr da. Warum?

Lesen Sie zuerst die Logs: Ein Token-Fehler, ein deaktivierter Intent oder ein Netzabbruch hinterlässt eine Spur. Prüfen Sie auch das Laufzeitende des kostenlosen Tarifs: 4 Tage, verlängerbar auf der Bot-Seite in den 2 Tagen vor Ablauf oder nach einer Sperrung.

Warum tritt EAI_AGAIN nur zeitweise auf?

Eine DNS-Auflösung, die nur zeitweise scheitert, kommt oft aus dem Netzwerk. Versuchen Sie es nach einer Pause erneut. Bleibt der Fehler bei korrektem Code bestehen, kontaktieren Sie den Support mit der genauen Uhrzeit.