Skip to main content

Chapitre 7 - Les utilisateurs

Nous rejoindre sur Discord

Dans ce chapitre, nous allons voit comment fonctionne un utilisateur. Quels sont les interactions que l'on peut faire avec.

Retrouvez l'ensemble des informations sur les utilisateurs dans : discord.js - GuildMember

Structure de l'utilisateur

GuildMember { // Information sur l'utilisateur
  guild: <ref *1> Guild { // Information sur la guild ou est présent l'utilisateur lors de l'utilisationde la commande
    id: '1003624283458785290',
    name: 'Formation Bot Discord',
    icon: 'c2a1d07fd0c51b8c0774461cea51a837',
    features: [],
    commands: GuildApplicationCommandManager {
      permissions: [ApplicationCommandPermissionsManager],
      guild: [Circular *1]
    },
    ...
  },
  joinedTimestamp: 1659353075815, // Date à laquelle le joueur à rejoint le serveur
  premiumSinceTimestamp: null, // Depuis quand l'utilisateur boost le serveur
  nickname: null, // L'utilisateur à modifier son pseudo
  pending: false, // L'utilisateur n'a pas validé le règlement (Communauté Discord)
  permissions : {}, // Permission de l'utilisateur
  communicationDisabledUntilTimestamp: null,
  _roles: [], // Liste des rôles que possède l'utilisateur
  user: User { // Information sur le compte
    id: '279989640210022401', // Id du compte
    bot: false, // L'utilisateur est un bot
    system: false, // Utilisateur officiel du système Discord
    flags: UserFlagsBitField { bitfield: 0 },
    username: 'Aros', // Nom de l'utilisateur
    discriminator: '2022',
    avatar: 'de8d06d7370b2cfb33916cc84f6bea83', // Avatar utilisé
    banner: undefined, // L'utilisateur à une bannière
    accentColor: undefined
  },
  avatar: null // L'utilisateur à modifier son avatar
}

Fonctionnalités utiles

Nous allons vous montrer quelques fonctionnalités utiles que vous pouvez être amenée à utiliser.

Lorsque l'on débute le développement d'un bot Discord, la grande majorité des éléments que l'on recherche sont disponible sur internet. Si vous ne savez pas comment utilisé une fonction ou récupérer une information, regarder sur internet 😉.

Envoyer un message privé : send()

user.send({
  content: "Mon message",
});

Vérifier les permissions : Pour vérifier les permissions d'un utilisateur, nous utiliserons la classe PermissionsBitField. Voici un exemple de code pour vérifier si un utilisateur à des permissions administrateurs :

const { PermissionsBitField } = require('discord.js');

if (user.permissions.has(PermissionsBitField.Flags.Administrator)) {
  // instructions
}

Gérer les rôles d'un utilisateur : la gestion des rôles d'un utilisateur peut se faire de plusieurs façons. On peut utiliser .roles et ._roles

Autres fonctionnalités :

if (user.bannable) { // L'utilisateur peut se faire ban par le bot
  // instructions
}

await user.setNickName('nouveau nom'); // Changer le nom de l'utilisateur sur le serveur