Discord基础机器人在线但Ping无回复问题求助
Discord机器人@提及无响应问题解决
问题原因及修复方案
1. Intents权限缺失
Discord v14及以上版本,读取消息内容(包括@提及)必须启用MessageContent Intent:
- 登录Discord开发者门户,进入你的机器人应用,在「Bot」页面开启「Message Content Intent」开关
- 代码中补充该Intent配置(以discord.js为例):
const { Client, GatewayIntentBits } = require('discord.js'); const client = new Client({ intents: [ GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent // 必须添加此权限 ] });
2. 事件监听逻辑错误
确保使用正确的事件名和判断逻辑:
- 替换旧版
message事件为messageCreate(discord.js v14+已废弃旧事件) - 正确判断消息是否提及机器人,同时排除机器人自身消息:
client.on('messageCreate', message => { if (message.author.bot) return; // 忽略机器人消息 if (message.mentions.has(client.user)) { // 检查是否被提及 message.reply('Pong!'); } });
3. 额外检查项
- 确认机器人在目标服务器拥有「发送消息」的权限
- 修改代码后重启机器人,确保配置生效
- 查看控制台是否有未捕获的报错,排查潜在代码问题
内容的提问来源于stack exchange,提问作者Gab
相关产品推荐
相关产品推荐

