【问题标题】:Discord.js bot not reading messagesDiscord.js 机器人不阅读消息
【发布时间】:2019-12-20 21:21:07
【问题描述】:

我正在尝试从我的第一个 discord 机器人开始,目前只使用基本的“Ping”“Pong”机器人。不幸的是,我的机器人似乎无法读取消息,尽管他们在服务器本身拥有完整的管理员权限,这意味着它甚至无法查看命令。

一些补充说明:

  • 机器人初始化并在 Discord 上上线
  • 机器人不显示其自定义状态
  • 机器人无法读取带有前缀的消息(在 config.json 中设置为 ;)

这是我目前使用的代码:

// Create Discord Session
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require("./config.json");

client.on('ready', () => {
    console.log('Ready!');
    client.user.setActivity('Running a test, hopefully.');
});

//Read Messages
client.on("message", (message) => {
    if (message.author.bot) return;
    if (message.content.indexOf(config.prefix) !== 0) return;
    const args = message.content.slice(config.prefix.length).trim().split(/ +/g);
    const command = args.shift().toLowerCase();

    if (command === "ping") {
        message.channel.send('Pong.');
        }

});

client.login(config.token);

【问题讨论】:

  • 对我来说看起来不错。除了代码末尾有 3 个反引号之外。也许您没有在 json 文件中放置正确的前缀?
  • @Antony 反引号是因为包装代码块的说明没有明确说明它们应该在自己的行上,我为他修好了。
  • 干杯 @Barmar 我的不好,至于 json 文件,我肯定使用了正确的前缀。

标签: javascript node.js discord discord.js


【解决方案1】:

BOT 还在线吗?正如安东尼所说 - config.json 中的前缀是否与您正在使用的前缀相同?

【讨论】:

  • 对了,少了一个登录命令,比如client.login(token)
  • 回答你的问题,是的,是的,config.json 在那里,带有正确的前缀和令牌,是的,机器人确实上线了。
  • @Archannad 你能给我看看 config.json 吗?发送前不要忘记删除令牌。
  • 另外,尝试改用client.user.setActivity('Running a test, hopefully.', { type: "PLAYING" }); 并告诉我,如果它现在有效。
猜你喜欢
  • 2019-12-23
  • 2021-12-13
  • 2018-06-05
  • 2021-02-01
  • 2021-05-08
  • 1970-01-01
  • 2020-09-08
  • 2017-11-20
  • 2021-10-19
相关资源
最近更新 更多