Guide
Events
Écoutez les événements Discord avec GlyriaEvent.
Vue d'ensemble
Les events dans glyria.js sont basés sur les fichiers, tout comme les commandes. Chaque fichier dans src/events/ est automatiquement chargé au démarrage.
Chaque fichier d'event exporte une instance GlyriaEvent par défaut :
// src/events/ready.ts
export default new GlyriaEvent()
.setEvent(Events.ClientReady)
.once()
.setHandler((client) => {
console.log(`✅ Connecté en tant que ${client.user.tag}`)
})
GlyriaEvent et Events sont disponibles globalement — aucun import nécessaire.Écouter une seule fois
Utilisez .once() pour n'écouter un événement qu'à sa première émission — utile pour l'événement ClientReady :
export default new GlyriaEvent()
.setEvent(Events.ClientReady)
.once()
.setHandler((client) => {
console.log(`✅ ${client.user.tag} est en ligne`)
})
Sans .once(), le handler se déclenche à chaque fois que l'événement est émis.
Événements de messages
// src/events/messageCreate.ts
export default new GlyriaEvent()
.setEvent(Events.MessageCreate)
.setHandler(async (message) => {
if (message.author.bot) return
if (message.content.startsWith("!ping")) {
await message.reply("Pong!")
}
})
Événements disponibles
GlyriaEvent accepte n'importe quel événement de l'enum Events de discord.js. Les plus courants :
| Événement | Description |
|---|---|
Events.ClientReady | Le bot est en ligne et prêt |
Events.MessageCreate | Un message est envoyé |
Events.GuildMemberAdd | Un membre rejoint un serveur |
Events.GuildMemberRemove | Un membre quitte un serveur |
Events.GuildBanAdd | Un membre est banni |
Events.InteractionCreate | Une interaction est reçue |
Pour la liste complète, consultez la documentation discord.js Events.
Organisation des fichiers
Comme pour les commandes, les sous-dossiers dans src/events/ servent uniquement à l'organisation :
src/events/
ready.ts
guild/
memberAdd.ts
memberRemove.ts
messages/
messageCreate.ts
Gardez un seul
GlyriaEvent par fichier pour plus de clarté et de maintenabilité.
