GlyriaClient
Vue d'ensemble
GlyriaClient étend le Client de discord.js et y ajoute les fonctionnalités de glyria.js — chargement automatique des commandes et événements, support du hot reload, arrêt propre et bus d'événements intégré.
const client = new GlyriaClient({
intents: [GatewayIntentBits.Guilds]
})
await client.login()
Constructeur
new GlyriaClient(options: GlyriaClientOptions)
GlyriaClientOptions
| Option | Type | Requis | Description |
|---|---|---|---|
intents | BitFieldResolvable<GatewayIntentsString, number> | ✅ | Intents de la gateway Discord |
TOKEN de votre .env. Ne le passez jamais manuellement.Propriétés
| Propriété | Type | Description |
|---|---|---|
bus | GlyriaBus<GlyriaEvents> | Bus d'événements interne |
commandsManager | CommandManager | Gère le chargement et l'enregistrement des commandes |
eventsManager | EventManager | Gère le chargement et l'enregistrement des événements |
Méthodes
login()
await client.login()
Démarre le bot. En interne :
- Charge et enregistre tous les fichiers d'événements depuis
src/events/ - Se connecte à Discord
- Charge et enregistre tous les fichiers de commandes depuis
src/commands/ - Écoute les messages de hot reload en mode dev
Retourne une Promise<string> — le token utilisé pour la connexion.
Événements
GlyriaClient étend les ClientEvents de discord.js avec un événement supplémentaire :
glyria:ready
Émis lorsque le bot est entièrement prêt — après le chargement des commandes et des événements.
client.bus.on("glyria:ready", ({ uptime, shardId }) => {
console.log(`Prêt sur le shard ${shardId}, uptime : ${uptime}ms`)
})
| Payload | Type | Description |
|---|---|---|
uptime | number | Temps écoulé depuis la connexion en millisecondes |
shardId | number | ID du shard actuel |
Arrêt propre
GlyriaClient écoute automatiquement les signaux SIGINT et SIGTERM. À la réception de l'un ou l'autre, il :
- Détruit la connexion discord.js
- Met le bot hors ligne sur Discord
- Termine le processus proprement
Aucun code supplémentaire nécessaire.
Hot reload
En mode dev (glyria dev), GlyriaClient écoute les messages IPC du watcher CLI :
| Message | Action |
|---|---|
hotreload:commands | Recharge toutes les commandes sans redémarrage |
hotreload:events | Recharge tous les événements sans redémarrage |
hotreload:config | Recharge glyria.config.ts sans redémarrage |
Cela est géré automatiquement — aucune configuration nécessaire.
Héritage
GlyriaClient étend le Client de discord.js. Toutes les propriétés et méthodes de discord.js sont disponibles :
client.guilds.cache
client.users.fetch(userId)
client.channels.fetch(channelId)
// ...
Consultez la documentation discord.js pour l'API complète.

