当用户加入公会时如何发送嵌入?
How do I send a embed when a user joins the guild?
我正在制作一个 Discord Bot,无需任何设置即可热烈欢迎用户。
我想让它做什么:我想让它找到一个名为“welcome”的频道并向它发送嵌入内容
实际上是做什么的:它不发送任何东西。我的帮助命令使用相同的东西,但它在 GuildMemberAdd 事件中不起作用
这是我的代码:
client.on("guildMemberAdd", (member) => {
try {
let embed = new Discord.MessageEmbed;
embed.setTitle(`Welcome, ${member.username}!`)
embed.setAuthor(message.author.username, message.author.avatarURL)
embed.setDescription('We hope you enjoy your stay!')
console.log(`New User "${member.user.username}" has joined "${member.guild.name}"` );
const channel = member.guild.channels.cache.find(c => c.name === "welcome").id
channel.send(embed);
} catch(err) {
console.log(err)
}
代码中的一个非常小的错误。
const channel = member.guild.channels.cache.find(c => c.name === "welcome").id
channel.send(embed);
如果您阅读代码,const channel 基本上是频道的 id 而不是频道。您不能向 id 发送任何内容。
改为:
const channel = member.guild.channels.cache.find(c => c.name === "welcome");
channel.send(embed);
应该可以。
我正在制作一个 Discord Bot,无需任何设置即可热烈欢迎用户。
我想让它做什么:我想让它找到一个名为“welcome”的频道并向它发送嵌入内容
实际上是做什么的:它不发送任何东西。我的帮助命令使用相同的东西,但它在 GuildMemberAdd 事件中不起作用
这是我的代码:
client.on("guildMemberAdd", (member) => {
try {
let embed = new Discord.MessageEmbed;
embed.setTitle(`Welcome, ${member.username}!`)
embed.setAuthor(message.author.username, message.author.avatarURL)
embed.setDescription('We hope you enjoy your stay!')
console.log(`New User "${member.user.username}" has joined "${member.guild.name}"` );
const channel = member.guild.channels.cache.find(c => c.name === "welcome").id
channel.send(embed);
} catch(err) {
console.log(err)
}
代码中的一个非常小的错误。
const channel = member.guild.channels.cache.find(c => c.name === "welcome").id
channel.send(embed);
如果您阅读代码,const channel 基本上是频道的 id 而不是频道。您不能向 id 发送任何内容。
改为:
const channel = member.guild.channels.cache.find(c => c.name === "welcome");
channel.send(embed);
应该可以。