首頁 >後端開發 >Python教學 >儘管沒有錯誤,但為什麼我的 Discord.py 2.0 機器人命令無法運作?

儘管沒有錯誤,但為什麼我的 Discord.py 2.0 機器人命令無法運作?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-21 05:43:11766瀏覽

Why Aren't My Discord.py 2.0 Bot Commands Working, Despite No Errors?

命令未在Discord.py 2.0 中運行:沒有錯誤,但在1.7.3 中出現

在從Discord.py 1.7.3 到2.0 的過渡中,有圖書館發生了重大變化。一個顯著的差異是 Intents 的引入,這是指定機器人應該監聽哪些類型的事件的方法。

Intents:缺少的連結

在 Discord.py 2.0 中,Intent 需要啟用您的機器人中的特定功能。預設情況下,訊息內容不包含在預設意圖中。因此,即使您的機器人成功運行並報告已準備就緒,它也無法接收命令,因為它缺乏必要的權限。

解決方案:啟用訊息內容意圖

解決方案是明確在您的機器人中啟用訊息內容意圖。這允許它讀取和回應訊息內容,包括命令。

操作方法如下:

  1. Discord 開發者入口網站: 存取 Discord 開發者入口網站並選擇您的應用程式。
  2. 機器人部分:導航到「機器人」部分。
  3. 啟用訊息內容意圖:在「權限」標籤下,找到「訊息內容意圖」部分並選中複選框以啟用它.
  4. 更新機器人代碼:啟用訊息內容意圖後,您需要更新您的機器人代碼以包含它:
import discord
from discord.ext import commands

# Create an instance of Intents (default intents are already included)
intents = discord.Intents.default()

# Add the Message Content Intent to the Intents list
intents.message_content = True

# Create your Discord Bot
bot = commands.Bot(command_prefix='$', intents=intents, help_command=None)

透過這些更改,您的機器人現在應該能夠在Discord.py 2.0 中正確接收和執行指令,就像它一樣1.7.3 中所做的。

以上是儘管沒有錯誤,但為什麼我的 Discord.py 2.0 機器人命令無法運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn