#Emit command not emitting the event

37 messages · Page 1 of 1 (latest)

unborn tangle
#

Hello I'm making an 'Emit' command in order to test some event handlers. Here's my code :

// emit.js
  data: new SlashCommandBuilder()
    .setName('emit')
    .setDescription('[DEV] Emit discord events for testing purposes')
    .addUserOption((option) =>
      option
        .setName('user')
        .setDescription('The usser to remove')
        .setRequired(true)
    ),

  async execute(interaction) {
    const userId = interaction.options.getUser('user').id;
    const memberToRemove = interaction.guild.members.cache.find(
      (member) => member.user.id === userId
    );

    interaction.client.emit('GuildMemberRemove', memberToRemove);
    await interaction.reply('GuildMemberRemove event emitted successfully.');
  },
// guildMemberRemove.js
name: Events.GuildMemberRemove,
async execute(member) {
  console.log(`${member.user.username} left the guild.`
}

The event is not triggered when I execute my command. Any idea please ?

low wedgeBOT
#
  • What's your exact discord.js npm list discord.js and node node -v version?
  • Not a discord.js issue? Check out #1081585952654360687.
  • Consider reading #how-to-get-help to improve your question!
  • Explain what exactly your issue is.
  • Post the full error stack trace, not just the top part!
  • Show your code!
  • Issue solved? Press the button!
marsh crag
#

you dont need to find user

unborn tangle
marsh crag
#

do you have a error

unborn tangle
#

No error

#

I'll log memberToRemove a sec

#

memberToRemove is working great, I have a GuildMember object

#

do I need any specific intent on my client for emitting events ?

#
const client = new Client({
  intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMembers],
  partials: [Partials.GuildMembers],
});```
marsh crag
#

GuildModeration maybe

unborn tangle
marsh crag
#

logging to console? in your event file

unborn tangle
#

No

#

it's not, so the event is not emmited actually

#

or not caught 😮

marsh crag
#

use trycatch in emitting

unborn tangle
#
    try {
      interaction.client.emit('GuildMemberRemove', memberToRemove);
    } catch (error) {
      console.log(error);
    }
marsh crag
#

try {
//emit
} catch(err) {
console.log(err)
}

unborn tangle
#

no log

marsh crag
#

are you sure your memberremove event works

#

when someone left normally

unborn tangle
#

Ill try

#

it works : User InfluenceEvent left the guild.

wary quartz
#

The event is called guildMemberRemove with a lowercase g. Or use Events.GuildMemberRemove to avoid such spelling mistakes

unborn tangle
#

Thanks I'm confused

gaunt elk
unborn tangle
#

It works

#

I fetch all members on ready

gaunt elk
unborn tangle
#

i just misspelled guildMemberRemove

gaunt elk
#

bruh, okay solved then

unborn tangle