Aller au contenu principal

🪑 Salons

🎊 Multi évènements​

Ici, on retrouve 3 types d'évènements:

Étant donné qu'on retrouve 3 types d'évènements, on ne peut pas simpltement créer des fichiers dans ./sources/modules/<module_name>/channels, on doit spécifier quel est le type d'évènement correspondant. Pour ce faire on ajoute une extension à la fin du fichier :

⎯ Exemple pour chaque évènement remplace <module_name> par le nom de ton module

  • create → ./sources/modules/<module_name>/channels/create.js
  • delete → ./sources/modules/<module_name>/channels/delete.js
  • update → ./sources/modules/<module_name>/channels/update.js

🤔 "Channel"​

Channel est un object avec un grand nombre de méthodes et de données, pensez à lire la documentation discord.js pour comprendre comment bien utiliser Channel.

➕ ChannelCreate​

Possède un argument channel qui est une instance de Channel.

export async function parse(channel)
{
console.log("new message from:", message.author.username)
console.log("content:", message.content)
}

export const conditions = [];
export const any_guild = false;
export const dm = false;
export const allow_bots = false;

➖ ChannelDelete​

Possède un argument channel qui est une instance de Channel.

export async function parse(message)
{
console.log("message from:", message.author.username, "has been deleted")
console.log("content:", message.content)
}

export const conditions = [];
export const any_guild = false;
export const dm = false;
export const allow_bots = false;

🆙 ChannelUpdate​

Possède deux arguments old_channel et new_channel qui sont des instances de Channel.

⚠️ Attention: old_channel représente l'état du salon avant la mise à jour et new_channel après la mise à jour.

export async function parse(old_channel, new_channel)
{
console.log("channel:", old_channel.name, "has been updated")
console.log("old_channel:", old_channel)
console.log("new_channel:", new_channel)
}

export const conditions = [];
export const any_guild = false;
export const dm = false;
export const allow_bots = false;

🖥️ Méthodes et paramètres​

Soyez prudent ChannelCreate et ChannelDelete ont tous deux uniquement 1 argument comme ci-dessous :

async function parse(channel)

Alors que ChannelUpdate possède 2 arguments

async function parse(old_channel, new_channel)

⎯ Exportation

En bas du fichier, nous avons l'exportation (exports), qui inclu plusieurs éléments importants.

export const conditions = [];
export const any_guild = false;
export const dm = false;
export const allow_bots = false;
  • parse → la méthode qui gère le clique / la réponse
  • customId → customId l'identifiant du bouton que l'on veut gérer
  • any_guild → si false, la commande ne pourra être exécutée que sur le serveur principal
  • dm → si true, vous pourrez utiliser la commande même en messages privés