Voici mon code qui essaie d'accéder à l'avatar de l'utilisateur:
Client.on("guildMemberAdd", newMember => { console.log("Welcomed member avatar: " + newMember.user.avatar); console.log("Welcomed member avatarURL: " + newMember.user.avatarURL); });
Le code ci-dessus fonctionne bien si c'est un utilisateur qui vient de rejoindre le serveur et a configuré un avatar différent de l'avatar par défaut de discord. Mais pour les utilisateurs qui ont l'avatar par défaut de Discord, avatar et avatarURL sont nuls.
Alors, comment puis-je faire fonctionner cela pour de tels utilisateurs?
BTW c'est possible parce que des bots comme https://welcomer.fun/ le font déjà.
4 Réponses :
Vous pouvez utiliser displayAvatarURL qui (selon la documentation) donne l'avatarURL si l'utilisateur en a un, et sinon, retournera l'URL par défaut de l'avatar. Exemple de code:
Client.on("guildMemberAdd", newMember => { console.log("Welcomed member avatarURL: " + newMember.user.displayAvatarURL); });
Pour la propriété avatar
, je ne pense pas qu'il y ait une propriété displayAvatar
ou quelque chose de similaire. J'ai vérifié la documentation, mais je n'ai rien trouvé à ce sujet
Hors sujet, mais quel serait l'équivalent dans discord.py
? =)
Je pense que c'est normal, pas d'avatar pas d'url Si avatarURL est nul, gérez ce cas et prenez plutôt l'URL d'une image générique
Si un utilisateur n'a pas d'avatar, son avatar par défaut sera son discriminateur modulo 5. Le point de terminaison de l'avatar serait https://cdn.discordapp.com/embed/avatars/0.png avec 0 étant la valeur.
Pour les curieux, voici comment le faire en Python ( discord.py )
# Returns .gif if it has been set (Nitro feature) else .png # Returns default 0.png 1.png 2.png 3.png 4.png if no image set str(person.avatar_url_as(static_format='png'))