I have a “Special User” which is equal to ‘Client.users.fetch(Special User’s ID)’. Then the user has two event listeners attached to the it, ‘message’ and ‘presenceUpdate’, The message event listener works perfects, although the presenceUpdate does not work at all, All help is greatly appreciated!
require("dotenv").config(); const Discord = require(`discord.js`); const Client = new Discord.Client(); Client.on("ready", () => { console.log(`tClient Ready`); }); var SpecialUser = Client.users .fetch(process.env.ID) .then((User) => { console.log(User.username); // Working User.client.addListener("message", (message) => { console.log("message"); }); // Not Working User.client.addListener("presenceUpdate", (Old, New) => { console.log(`Presence Updated`); }); }) .catch(console.error); Client.on("message", (message) => {}); Client.login(process.env.TOKEN);
Advertisement
Answer
If the presenceUpdate
event doesn’t trigger, chances are you’ll need to add the GUILD_PRESENCES
intent either using the client options:
const Discord = require(`discord.js`); const client = new Discord.Client({ intents: ['GUILDS', 'GUILD_MESSAGES', 'GUILD_PRESENCES'], }); // rest of your code...
In your Discord dashboard; by choosing your bot then by clicking on the Bot
settings: