I am working on anti-nuke bot, to prevent server from getting nuked by bots. However the discord js documentation is very confusing, so how would I able to listen for ban event using 12v Discord JS. Something like this:
client.on("onBan", ban => {
console.log(ban.theUserWhoDidTheBan);
console.log(ban.reason);
console.log(ban.theUserWhoGotTheBan);
});
So I can print this:
console.log(`${userA} banned ${userB} because ${reason}`);
userA is the user that committed the ban userB is the user that got the ban reason is an ban reason
This will allow me to check how many members and how fast they got banned by who.
You need to use the guildBanAdd event of the Client object. It accepts two parameters, guild and user which you can use like this:
client.on("guildBanAdd", async function (guild, user) {
// guild is the guild where the ban took place
// if you need to send a message or anything, you can reference it from guild
// the 'guild' object methods and properties: https://discord.js.org/#/docs/main/stable/class/Guild
// user is the user object which is banned
// user object: https://discord.js.org/#/docs/main/stable/class/User
// following code will send a message in the #general channel
const channel = guild.channels.cache.find(channel => channel.name === "general");
channel.send(`${user} has been banned!`);
});