DMs deaktivieren discord.py
Hallöchen!
Ich entwickle derzeit einen Discord-Bot und möchte die DMs für den Bot deaktivieren, da die Befehle ausschließlich in Servern genutzt werden sollen, auf denen der Bot installiert ist. Gibt es eine einfachere Methode, als jeden einzelnen Command anzupassen, damit er die guild.id überprüft und eine Fehlermeldung ausgibt, wenn diese None ist?
Danke im Voraus! 😊
8 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.
- :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
.
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀Das geht mit dem
guild_only()
decorator. Wenn du mit „cogs“ arbeitest, müsste es @app_commands.guild_only()
seinDanke, ich probiere es gleich aus
^ Das bedeutet aber nicht das die Bot DMs deaktiviert sind, er erhält trotzdem alle Events die in den DMs passieren (wie Nachrichten senden, also on_message event, etc.) - aber ja, die Slashbefehle funktionieren dort dann nich
achso, ich hatte das vorhin so gelöst, das ich in jedem command eine abfrage erstellt hab
ist aber doof das ganze in jedem command zu haben, da er sonst trotzdem reagiert.
Dies ist aber eine sehr schlechte Methode - ich würde dir das empfehlen was Kalo sagte, weil es erstmal sehr kurz ist und auch so funktioniert wie man e sbraucht.
Daher rate ich dir das von Kalo zu nutzen - dein Code bedeutet nicht nur extrem viele Code-Wiederholungen, sondern
guild
kann auch in anderen Kontexten einfach None
sein. Zum Beispiel wenn Discord's API wieder rum spinnt.macht Sinn 😄
›
✅
- Antwort akzeptiert: Der Ersteller dieser Frage hat deine Antwort akzeptiert (+25 Karma)