当有人使用 discord.js 加入服务器时发送欢迎消息

Posted

技术标签:

【中文标题】当有人使用 discord.js 加入服务器时发送欢迎消息【英文标题】:Sending welcome messages when someone joins the server using discord.js 【发布时间】:2021-11-12 14:35:48 【问题描述】:

我正在使用带有 node.js 和 discord.js 的 Visual Studio Code。我查看了this 上一个线程并尝试了代码client.on('guildMemberAdd', member => member.guild.channels.get('[the channel id]').send("Welcome"); );,但是当人们加入时,它不会发送消息。

【问题讨论】:

cache.get() 适用于 v12 及更高版本 @Elitezen 嗯?我有 discord.js@12.5.3 是的,所以使用member.guild.channels.cache.get 请提供足够的代码,以便其他人更好地理解或重现问题。 【参考方案1】:

要解决您的问题,您可以尝试

client.on('guildMemberAdd', member => 
     const welcomeChannel = member.guild.channels.cache.find(ch => ch.id === 'id-of-the-channel-here');
     welcomeChannel.send(`Hello there $member`);

要完成这项工作,请确保您已在 https://discord.com/developers/applications

上启用 Privileged Gateway Intents

【讨论】:

虽然这不是一个大问题,但最好使用.get() 而不是.find() 作为频道ID 我已经习惯使用.find()@Elitezen

以上是关于当有人使用 discord.js 加入服务器时发送欢迎消息的主要内容,如果未能解决你的问题,请参考以下文章

Discord.js 尝试在用户加入语音频道时发送消息

当用户使用 Discord.JS 加入 VC 时发送 DM

Discord 欢迎留言 DM

Discord.js V13 欢迎消息

Discord.js 使用@person 和#channel 发送消息

Discord.js 机器人加入然后离开