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

PyCharm中Discord机器人无消息响应问题排查

Discord机器人无法响应消息的原因与解决方法

问题根源

你使用的discord.Intents.default()仅启用了Discord的基础意图,但**消息内容读取权限(Message Content Intent)**默认处于关闭状态。没有这个权限,机器人无法获取消息内容,on_message事件里的判断逻辑自然无法触发。

解决步骤

1. 调整代码的Intents配置

修改代码,显式开启消息内容权限:

import discord

TOKEN = 'MY TOKEN'

# 初始化默认意图,同时开启消息内容权限
intents = discord.Intents.default()
intents.message_content = True  # 这一行是关键,必须添加

client = discord.Client(intents=intents)


@client.event
async def on_ready():
    print(f'{client.user} has connected to Discord!')


@client.event
async def on_message(message):
    if message.author == client.user:
        return

    if message.content == 'hi':
        response = "hello"
        await message.channel.send(response)

client.run(TOKEN)

2. 在Discord开发者后台开启权限

仅修改代码不够,需在Discord开发者平台手动开启对应权限:

  • 打开Discord开发者应用页面,找到你的机器人应用
  • 进入「Bot」标签页
  • 在「Privileged Gateway Intents」区域,找到「Message Content Intent」并开启开关
  • 保存设置

3. 重启机器人

修改代码和后台设置后,必须重启机器人程序,新的权限配置才能生效。

内容的提问来源于stack exchange,提问作者Fabian OceanMan Grey

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 12:33:11