如何让我的 Discord 机器人发送欢迎信息?

How do I get my Discord bot to send a welcome message?

我已经观看了很多视频,并按照在线示例进行操作,但仍然无法让我的 discord 机器人在成员加入时简单地发送消息。也许我错过了一个重要的更新?

//require the necessary discord.js classes
const { Client, Intents } = require("discord.js");
const { token } = require("./config.json");

//create a new client instance
const client = new Client({ intents: [Intents.FLAGS.GUILDS] });

//when the client is ready, run this code (only once)
client.on('ready', () => {
    console.log("Online");
});

//sends user a welcome message upon joining
client.on('guildMemberAdd', member => {
    const channel = member.guild.channels.cache.get('921490782958014576');    
    channel.send("Welcome to the server!!")
});

client.login(token);

我一无所获。纳达。我试过几段不同的代码。我已经三重检查了权限。这非常令人沮丧。我试过取消添加机器人并将其读取到服务器。我查看了 discord.js 文档,我的代码似乎没有任何问题。在我看来,guildMemberAdd 似乎没有发出任何东西。我正在使用记事本++来编辑我的代码。我觉得我可能会使用更好的东西来进行调试。

问题可能是由于缺少 intent。尝试像这样将 GUILD_MEMBERS 意图添加到您的意图列表中。

const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MEMBERS] });

discord.js 文档:https://discord.js.org/#/docs/main/stable/class/Intents?scrollTo=s-FLAGS

开发者文档:https://discord.com/developers/docs/topics/gateway#gateway-intents