Discordjs-Commanderjs
Gestionnaire de commandes pour discord.js

Pour installer Discordjs-Commanderjs, exécutez simplement la commande npm i discordjs-commanderjs
dans le dossier de votre application Node.Js.
Voici un exemple pour utiliser cette librairie :
const Discord = require('discord.js');
const Commander = require('discordjs-commanderjs');
const Client = new Discord.Client();
const Commands = new Commander.Commands(Client, 'VOTRE_ID');
Commands.addCommandWithDirectory('commands'); // Le dossier contenant vos commandes.
const Dispatcher = new Commander.Dispatcher({
discord: Discord,
prefix: 'VOTRE_PREFIX',
responseOn: {
prefix: true,
mention: true
},
commands: Commands,
deleteCommand: true,
options: {
client: Client
}
});
Client.on('message', message => {
Dispatcher.launch(message);
});
Client.login('VOTRE_TOKEN').catch(console.error);
Documentation
Commands
Paramètre | Type | Optionnel | Description |
---|
client | Client | Non | Instance de la classe Discord.Client |
ownerID | String | Non | Identifiant du propriétaire du bot |
const Commands = new Commander.Commands(client, ownerID);
addCommand
Paramètre | Type | Optionnel | Description |
---|
command | Object | Non | Instance d'une commande |
Commands.addCommand(command)
addCommandWithDirectory
Paramètre | Type | Optionnel | Description |
---|
directory | String | Non | Nom du dossier qui contient vos commandes |
Commands.addCommandWithDirectory(directory)
Dispatcher
Paramètre | Type | Optionnel | Description |
---|
option | Object | Non | Information du Dispatcher |
option.discord | Object | Non | Objet discord.js |
option.prefix | String | Non | Prefix des commandes |
option.responseOn | Object | Non | Active la réponse via ... |
option.responseOn.prefix | Boolean | Non | ... le prefix |
option.responseOn.mention | Boolean | Non | ... la mention |
option.commands | Object | Non | Instance de la classe Commands |
option.deleteCommand | boolean | Non | Supprime automatiquement la commande du tchat |
option.options | Object | Non | Objet envoyé à la commande |
const Dispatcher = new Commander.Dispatcher({
discord: Discord,
prefix: 'VOTRE_PREFIX',
responseOn: {
prefix: true,
mention: true
},
commands: Commands,
deleteCommand: true,
options: {
client: Client
}
});
Création d'une commande
Voici un exemple d'une commande :
Paramètre | Type | Optionnel | Description |
---|
option | Object | Non | Information de la commande |
option.name | String | Non | Nom de la commande (en minuscule) |
option.aliases | Array | Oui | Alias de la commande (en minuscule) |
option.description | String | Oui | Description de la commande (pour la commande d'aide) |
option.group | String | Oui | Groupe de la commande (pour la commande d'aide) |
option.hidden | Boolean | Oui | Définie si la commmande dois apparaitre dans la commande 'help' |
option.examples | Array | Oui | Liste d'exemple a afficher dans la commmande 'help' |
option.clientPermissions | Array | Oui | Liste des permissions que le bot doit avoir |
option.userPermissions | Array | Oui | Liste des permissions que l'utilisateur doit avoir |
option.throttling | Object | Oui | Option du cooldown |
option.throttling.usages | Integer | Oui | Nombre maximal d'utilisation de la commande autorisée dans la période |
option.throttling.duration | Integer | Oui | Durée pour compter les utilisations de la commande (en secondes) |
option.guildOnly | Boolean | Oui | Définie si la commande est active seulement sur les serveurs |
option.ownerOnly | Boolean | Oui | Définie si la commande est active seulement pour le propriétaire ... |
option.ownerOnly.guild | Boolean | Oui | ... du serveur |
option.ownerOnly.bot | Boolean | Oui | ... du bot |
option.commandHelp | Boolean | Oui | Définie si la commande est votre commmande d'aide (permet d'avoir accès a toute les commandes via option.commands dans la méthode run) |
option.unknown | Boolean | Oui | Définie si la commande serra appeler dans le cas ou aucune commmande est reconue |
const { Command } = require('discordjs-commanderjs');
class help extends Command {
constructor () {
//option ci dessous
super({
name: 'help',
aliases: ['aide'],
description: 'Lorem ipsum dolor sit amet.',
group: 'généraux',
hidden: false,
examples: ['help'],
clientPermissions: ['SEND_MESSAGES'],
userPermissions: ['SEND_MESSAGES'],
throttling: {
usages: 1,
duration: 5
},
guildOnly: true,
ownerOnly: {
guild: false,
bot: false
},
commandHelp: true,
unknown: false
});
}
run (message, args, option) { // la variable option contient l'objet que vous avez passé dans le Dispatcher
// code a exécuté si la commande est appeler.
}
onError(err, message) {
// code a exécuté si il y a une erreur
}
}
module.exports = help;