即使没有任何错误,我的 discord.js 机器人也不会回复用户消息
我的 discord.js 机器人版本是 13.1.0,我的节点版本是 16.7.0.我在终端中输入了这些命令:npm init
创建 package.json 和 npm install discord.js
安装 discord 包.
my discord.js bot has version 13.1.0, and my node's version is 16.7.0. I entered these commands in the terminal : npm init
to create package.json and npm install discord.js
to install discord package.
我在 index.js 中编写了代码,并创建了 config.json 将令牌放在那里.
I writed the code in index.js, and I created config.json to put the token there.
当我运行代码时,它会显示准备就绪!"在控制台中并在 Discord 中在线.我还可以毫无问题地更改机器人的状态和活动.这里的问题是机器人不发送或回复消息.
When I run then the code it shows me 'Ready!' in the console and being online in Discord. I also can change the status and the activity of the bot without a problem. The problem here is the bot doesn't send or reply to a message.
下面是代码
const { Client, Intents } = require('discord.js');
const { token } = require('./config.json');
const client = new Client({ intents: [Intents.FLAGS.GUILDS] });
client.once('ready', () => {
console.log('Ready!');
});
client.on ('messageCreate', (message) => {
if (message.content === 'hello') {
message.reply('Hello')
};
});
client.login(token);
这是 config.json 的代码,以防万一.
this's config.json's code just in case.
{
"token": "my_bot_token!"
}
推荐答案
问题是由于缺少意图引起的.要收听消息,您需要指定 GUILD_MESSAGES
标志:
The issue is caused by missing intents. To listen to messages, you need to specify the GUILD_MESSAGES
flag:
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
相关文章