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

Discord.JS机器人在线但无响应问题排查求助

问题分析与解决

你的机器人在线但不响应指令,核心原因是你混用了Discord.js原生代码和另一类机器人框架(比如Botkit)的API——controller.hears是Botkit专属的消息监听方法,Discord.js本身并不支持这个语法,所以你的指令监听逻辑完全没有被执行,机器人自然不会响应。

修正方案:改用纯Discord.js写法

把原来的module.exports部分替换成Discord.js原生的消息监听逻辑,同时注意适配Discord.js的版本差异:

完整修正代码

// require the discord.js module
const Discord = require('discord.js');
// create a new Discord client
const client = new Discord.Client({ 
  intents: [
    Discord.Intents.FLAGS.GUILDS, 
    Discord.Intents.FLAGS.GUILD_MESSAGES,
    Discord.Intents.FLAGS.MESSAGE_CONTENT // Discord.js v13+必须添加这个意图才能读取消息内容
  ] 
});

// 机器人就绪事件
client.once('ready', () => {
	console.log('Ready!');
});

// 监听消息创建事件(Discord.js v13+用messageCreate,v12及以下用message)
client.on('messageCreate', (message) => {
  // 忽略机器人自己的消息,避免循环
  if (message.author.bot) return;
  // 判断是否触发!appreciates指令
  if (message.content.startsWith('!appreciates')) {
    let sender = message.author;
    // 获取被@的非机器人用户(和原逻辑一致)
    let recipient = message.mentions.users
      .filter(user => !user.bot)
      .last();
    
    let responses = [
      `Hey, ${sender.username}, I appreciate you! :heart_eyes:`,
      `Hey, ${sender.username}, I appreciate your enthusiasm! :muscle:`,
      `Hey, ${sender.username}, I appreciate your commands! :wink:`,
      `Hey, ${sender.username}, I appreciate your participation! :grinning:`,
      `Hey, ${sender.username}, I appreciate all your works! :blush:`,
      `Hey, ${sender.username}, I appreciate everything you do. :star_struck:`
    ];
    
    let response = responses[Math.floor(Math.random() * responses.length)];
    // 回复消息
    message.reply(response);
  }
});

client.login('app token');

关键注意事项

  • Intent权限:如果你的Discord.js版本是v13或更高,必须在Discord开发者平台的机器人设置里开启Message Content Intent权限,同时在代码的客户端配置中声明这个意图(如上面代码所示),否则机器人无法读取消息内容。
  • 版本适配:如果用的是v12及以下版本,把messageCreate换成message,并且不需要配置MESSAGE_CONTENT意图。
  • 避免框架混用:Discord.js和Botkit是不同的机器人开发框架,不要把两者的代码混写,选择其中一种即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 11:13:11