Bot discord (node + discord.js) Renvoi d'erreur MP refuser par l'utilisateur
Fermé
chakalis49
Messages postés
175
Date d'inscription
dimanche 18 septembre 2011
Statut
Membre
Dernière intervention
20 juin 2019
-
20 juin 2019 à 01:22
SachOscarGaming - 31 mars 2020 à 19:20
SachOscarGaming - 31 mars 2020 à 19:20
A voir également:
- Fermer le mp discord
- Suprimer MP discord - Forum Discord
- Xnview mp - Télécharger - Visionnage & Diaporama
- Mp moi ✓ - Forum Mail
- Envoyer des MP sur facebook - Forum Facebook
- Comment supprimer les messages d'une conversation Discord ? ✓ - Forum Discord
1 réponse
chakalis49
Messages postés
175
Date d'inscription
dimanche 18 septembre 2011
Statut
Membre
Dernière intervention
20 juin 2019
37
Modifié le 20 juin 2019 à 02:46
Modifié le 20 juin 2019 à 02:46
Bon voilà j'ai réussi à faire en sorte que le bot ne plante plus j'avais pas définis la fonction du .catch ligne 56 et 76.
Du coup voici mon nouveau code:
Du coup j'aimerais savoir comment récupérer le pseudo du l'utilisateur dans la console car avec un ${user} il me met une suite de chiffre et avec un ${user.name} il me met undefined.
Et existe t-il une solution pour éviter l'affichage de l'erreur dans la console qui suis après "succès. Rôle ajouté."
Du coup voici mon nouveau code:
//addrole & delrole client.on('raw', event => { const eventName = event.t; if (eventName === 'MESSAGE_REACTION_ADD') { if (event.d.message_id === '590033047932502017') { var reactionChannel = client.channels.get(event.d.channel_id); if(reactionChannel.messages.has(event.d.message_id)) return; else { reactionChannel.fetchMessage(event.d.message_id) .then(msg => { var msgReaction = msg.reactions.get(event.d.emoji.name + ":" + event.d.emoji.id); var user = client.users.get(event.d.user_id); client.emit('messageReactionAdd', msgReaction, user); }) .catch(err => console.log(err)); } } } else if(eventName === 'MESSAGE_REACTION_REMOVE') { if (event.d.message_id === '590033047932502017') { var reactionChannel = client.channels.get(event.d.channel_id); if (reactionChannel.messages.has(event.d.message_id)) return; else { reactionChannel.fetchMessage(event.d.message_id) .then(msg => { var msgReaction = msg.reactions.get(event.d.emoji.name + ":" + event.d.emoji.id); var user = client.users.get(event.d.user_id); client.emit('messageReactionRemove', msgReaction, user); }) .catch(err => console.log(err)); } } } }); client.on('messageReactionAdd', (messageReaction, user) => { var roleName = messageReaction.emoji.name; var role = messageReaction.message.guild.roles.find(role => role.name.toLowerCase() === roleName.toLowerCase()); if(role) { var member = messageReaction.message.guild.members.find(member => member.id === user.id); if(member) { member.addRole(role.id); client.channels.get("509864489248620547").send(`Rôle ${role} attribué à ${user}`); member.createDM().then(channel => { channel.send(`Le rôle **${role.name}** vous a bien été attribué`); }).catch(console.log(`AddRole ${user} refuse les MP`)) console.log(`succès. Rôle ajouté.`) } } }); client.on('messageReactionRemove', (messageReaction, user) => { var roleName = messageReaction.emoji.name; var role = messageReaction.message.guild.roles.find(role => role.name.toLowerCase() === roleName.toLowerCase()); if(role) { var member = messageReaction.message.guild.members.find(member => member.id === user.id); if(member) { member.removeRole(role.id); client.channels.get("509864489248620547").send(`Rôle ${role} retiré à ${user}`); member.createDM().then(channel => { channel.send(`Le rôle **${role.name}** vous a bien été retiré`); }).catch(console.log(`DelRole ${user} refuse les MP`)) console.log("succès. Rôle retiré.") } } });
Du coup j'aimerais savoir comment récupérer le pseudo du l'utilisateur dans la console car avec un ${user} il me met une suite de chiffre et avec un ${user.name} il me met undefined.
AddRole <@270748295725318144> refuse les MP
botexp.js:105
succès. Rôle ajouté.
botexp.js:106
Et existe t-il une solution pour éviter l'affichage de l'erreur dans la console qui suis après "succès. Rôle ajouté."
(node:19504) UnhandledPromiseRejectionWarning: DiscordAPIError: Cannot send messages to this user
at item.request.gen.end (d:\Bibliothèques\Desktop\Fences\4-Codage\Site Web\Bot Discord\BotExp\node_modules\discord.js\src\client\rest\RequestHandlers\Sequential.js:85:15)
at then (d:\Bibliothèques\Desktop\Fences\4-Codage\Site Web\Bot Discord\BotExp\node_modules\discord.js\node_modules\snekfetch\src\index.js:215:21)
at process._tickCallback (internal/process/next_tick.js:68:7)
warning.js:18
(node:19504) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
warning.js:18
(node:19504) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
warning.js:18
31 mars 2020 à 19:20
as-tu essayé avec un ${user.tag} ?
Bonne soirée