On the event guildmemberupdate, I am trying to see if the event is in my server and if the role is a certain role. If all things are true, it will send a message. It does not send a message though
Here is the code
this.on('guildMemberUpdate', function (guild, oldMember, newMember) {
if(guild.id !== '#') {
return
} else {
const wc = new Discord.WebhookClient("#', 'lG-###-7RIXy3LIup80X");
if (oldMember.roles.cache.size !== newMember.roles.cache.size) {
if (!oldMember.roles.cache.has("851156630748921927") && newMember.roles.cache.has("851156630748921927")) {
wc.send(`yo !`);
}
}
}
})
It doesn’t send ‘test’
Advertisement
Answer
The guildMemberUpdate event requires the server members intent. You can enable it in the Discord Developer Portal, and within your client instantiation
const { Intents } = require("discord.js")
const client = new Client({intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MEMBERS]})
//other intents may be added. Make sure it has server members intent (Intents.FLAGS.GUILD_MEMBERS)