UNPKG

discord.js-self

Version:

A fork of discord.js with support of user accounts

152 lines (130 loc) 4.95 kB
# Moderation In here, you'll see some basic examples for kicking and banning a member. ## Kicking a member Let's say you have a member that you'd like to kick. Here is an example of how you _can_ do it. ```js // Import the discord.js module const Discord = require('discord.js'); // Create an instance of a Discord client const client = new Discord.Client(); /** * The ready event is vital, it means that only _after_ this will your bot start reacting to information * received from Discord */ client.on('ready', () => { console.log('I am ready!'); }); client.on('message', message => { // Ignore messages that aren't from a guild if (!message.guild) return; // If the message content starts with "!kick" if (message.content.startsWith('!kick')) { // Assuming we mention someone in the message, this will return the user // Read more about mentions over at https://discord.js.org/#/docs/main/master/class/MessageMentions const user = message.mentions.users.first(); // If we have a user mentioned if (user) { // Now we get the member from the user const member = message.guild.member(user); // If the member is in the guild if (member) { /** * Kick the member * Make sure you run this on a member, not a user! * There are big differences between a user and a member */ member .kick('Optional reason that will display in the audit logs') .then(() => { // We let the message author know we were able to kick the person message.reply(`Successfully kicked ${user.tag}`); }) .catch(err => { // An error happened // This is generally due to the bot not being able to kick the member, // either due to missing permissions or role hierarchy message.reply('I was unable to kick the member'); // Log the error console.error(err); }); } else { // The mentioned user isn't in this guild message.reply("That user isn't in this guild!"); } // Otherwise, if no user was mentioned } else { message.reply("You didn't mention the user to kick!"); } } }); // Log our bot in using the token from https://discordapp.com/developers/applications/me client.login('your token here'); ``` And the result is: ![Image showing the result](/static/kick-example.png) ## Banning a member Banning works the same way as kicking, but it has slightly more options that can be changed. ```js // Import the discord.js module const Discord = require('discord.js'); // Create an instance of a Discord client const client = new Discord.Client(); /** * The ready event is vital, it means that only _after_ this will your bot start reacting to information * received from Discord */ client.on('ready', () => { console.log('I am ready!'); }); client.on('message', message => { // Ignore messages that aren't from a guild if (!message.guild) return; // if the message content starts with "!ban" if (message.content.startsWith('!ban')) { // Assuming we mention someone in the message, this will return the user // Read more about mentions over at https://discord.js.org/#/docs/main/master/class/MessageMentions const user = message.mentions.users.first(); // If we have a user mentioned if (user) { // Now we get the member from the user const member = message.guild.member(user); // If the member is in the guild if (member) { /** * Ban the member * Make sure you run this on a member, not a user! * There are big differences between a user and a member * Read more about what ban options there are over at * https://discord.js.org/#/docs/main/master/class/GuildMember?scrollTo=ban */ member .ban({ reason: 'They were bad!', }) .then(() => { // We let the message author know we were able to ban the person message.reply(`Successfully banned ${user.tag}`); }) .catch(err => { // An error happened // This is generally due to the bot not being able to ban the member, // either due to missing permissions or role hierarchy message.reply('I was unable to ban the member'); // Log the error console.error(err); }); } else { // The mentioned user isn't in this guild message.reply("That user isn't in this guild!"); } } else { // Otherwise, if no user was mentioned message.reply("You didn't mention the user to ban!"); } } }); // Log our bot in using the token from https://discordapp.com/developers/applications/me client.login('your token here'); ``` And the result is: ![Image showing the result](/static/ban-example.png)