You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Nextcord开发Discord机器人遇intents未定义的NameError问题求助

问题解决方案

1. 直接报错原因:未定义Intents实例

你代码里直接用了intents变量但没提前创建,这是NameError的根源。需要先初始化Intents对象,根据机器人需求启用对应权限:

# 初始化默认Intents,包含基础权限
intents = nextcord.Intents.default()
# 如果机器人需要读取消息内容(比如处理消息相关逻辑),额外开启此权限
# intents.message_content = True

2. 修复客户端实例冲突

你同时初始化了nextcord.Client和commands.Bot,这两个都是机器人客户端,会导致逻辑冲突。commands.Bot是Client的子类,更适合开发带命令的机器人,保留它即可:

# 替换原有的client和bot初始化代码
intents = nextcord.Intents.default()
# 如需消息内容权限则开启上面的注释行
bot = commands.Bot(command_prefix="!", intents=intents)  # command_prefix自定义即可,斜杠命令不需要但必填

3. 修正斜杠命令装饰器参数

第二个命令用了channel_ids=[testingServerID],但testingServerID是服务器ID而非频道ID,应该改为guild_ids来指定命令生效的服务器:

@bot.slash_command(guild_ids=[testingServerID])
async def repeat(interaction: Interaction, message: str):
    await interaction.response.send_message(f"you said '{message}'")

4. 统一事件与命令的绑定对象

把所有@client.event和@client.slash_command改成@bot.event和@bot.slash_command,因为现在用的是bot实例。


完整修正代码

from nextcord import Interaction, SlashOption, ChannelType
from nextcord.abc import GuildChannel
from nextcord.ext import commands
import nextcord

# 初始化Intents
intents = nextcord.Intents.default()
# 如需读取消息内容,取消下面注释并在Discord开发者后台开启对应权限
# intents.message_content = True

# 初始化Bot客户端
bot = commands.Bot(command_prefix="!", intents=intents)
token = 'hidden'
testingServerID = 1047152916869427271

@bot.event
async def on_ready():
    print("Bot is up and ready!")

@bot.slash_command(guild_ids=[testingServerID])
async def youtubeslashcommand(interaction: Interaction):
    await interaction.response.send_message("Hi Youtube")

@bot.slash_command(guild_ids=[testingServerID])
async def repeat(interaction: Interaction, message: str):
    await interaction.response.send_message(f"you said '{message}'")

bot.run(token)

额外注意

  • 如果开启了message_content权限,需要登录Discord开发者后台,在机器人页面的「Privileged Gateway Intents」中开启「Message Content Intent」。
  • 指定guild_ids的斜杠命令会立刻在对应服务器生效;不指定的话需要等待Discord全局同步(约1小时)。

内容的提问来源于stack exchange,提问作者Iaon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 19:15:38