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

Discord Bot已在线但无响应:Ping命令无法触发Pong返回

Discord Bot Ping无响应,控制台提示消息内容非'ping'的解决方法

问题情况

在Replit上基于JavaScript开发Discord Bot,仅实现Ping-Pong命令(发送Ping返回Pong),Bot显示在线,但发送Ping后无响应,控制台输出Message content 'xxx' is not 'ping'。

原因分析

  1. 缺失MESSAGE_CONTENT意图:Discord从v14版本开始,获取消息内容需要额外声明MESSAGE_CONTENT意图,且必须在Discord开发者门户中手动启用该权限。当前代码仅声明了GUILDS和GUILD_MESSAGES,无法正常读取完整的消息内容,导致匹配失败。
  2. 消息内容可能存在隐藏字符/格式问题:比如输入时不小心带入全角空格、表情或其他不可见字符,转小写后无法匹配纯"ping"。

解决方案

步骤1:添加并启用MESSAGE_CONTENT意图

  • 代码中更新Intents配置,加入Intents.FLAGS.MESSAGE_CONTENT:
const client = new Client({
  intents: [
    Intents.FLAGS.GUILDS,
    Intents.FLAGS.GUILD_MESSAGES,
    Intents.FLAGS.MESSAGE_CONTENT // 添加这一行
  ]
});
  • 登录Discord开发者门户,找到你的Bot应用:
    1. 进入"Bot"页面
    2. 在"Privileged Gateway Intents"区域,开启"Message Content Intent"开关

步骤2:优化消息匹配逻辑(可选)

如果仍存在匹配问题,可以放宽匹配条件,用正则忽略大小写和前后空格:

// 替换原有的if判断
if (/^\s*ping\s*$/i.test(message.content)) {
  // 发送pong的逻辑
}

修改后的完整代码

require('dotenv').config();

const { Client, Intents } = require("discord.js");
const client = new Client({
  intents: [
    Intents.FLAGS.GUILDS,
    Intents.FLAGS.GUILD_MESSAGES,
    Intents.FLAGS.MESSAGE_CONTENT // 新增意图
  ]
});

client.once("ready", () => {
  console.log("Discord bot is online!");
});

client.on("messageCreate", message => {
  console.log(`Received message: '${message.content}'`);

  if (message.author.bot) {
    console.log("Message is from a bot. Ignoring.");
    return;
  }

  console.log("Message is not from a bot.");

  // 使用正则匹配,忽略大小写和前后空格
  if (/^\s*ping\s*$/i.test(message.content)) {
    console.log("Received 'ping' message.");
    message.channel.send("pong").then(() => {
      console.log("Sent 'pong' in response to 'ping'");
    }).catch(err => {
      console.error("Failed to send 'pong':", err);
    });
  } else {
    console.log(`Message content '${message.content.trim().toLowerCase()}' is not 'ping'.`);
  }
});

client.login(process.env.token).catch(err => {
  console.error("Failed to login:", err);
});

内容的提问来源于stack exchange,提问作者ethan fait des videos

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 02:23:17