J'essaie de faire un bot que, chaque fois que quelqu'un dit quelque chose, il envoie un message dans la canal disant que cette personne est là et attend que quelqu'un rejoint. Cependant, il n'imprime que @ NE1 (le rôle que je veux qu'il mentionne) en tant que texte brut. De plus, quand je dois mentionner l'utilisateur, il n'écrit que l'ID utilisateur au lieu d'envoyer en réalité @ (nom d'utilisateur).
p>
const Discord = require('discord.js'); const keepAlive = require('./server'); const client = new Discord.Client(); client.on('message', message => { if (message.toString().toLowerCase().includes('ne1 here')) { message.channel.send('@ne1, ' + message.author + ' is online and waiting for you to join!'); } }); keepAlive(); client.login(process.env.TOKEN);
3 Réponses :
Discord Mentions (rôle, utilisateur, etc.) ont un format spécial comme détaillé dans la documentation ici . P>
Donc, pour mentionner un utilisateur, vous devez utiliser leur ID utilisateur <@ user_id> code> /
<@! user_id> code> et pour un rôle il est similaire
<@ & Role_id> code>. P>
Afin de mentionner un utilisateur, vous devez avoir leur ID utilisateur et utiliser le format suivant:
modifier votre message pour l'adapter: P> ou code>. Pour les rôles do
message.channel.send(`<@&${ROLEID}> <@${message.author}> is online and waiting for you to join!`);
Je suppose que vous utilisez discord.js v12
Si vous voulez que le moyen le plus simple de mentionner l'utilisateur, vous pouvez utiliser p> aussi j'utiliserais l'ID de rôle au lieu de @Role
Vous pouvez obtenir l'identifiant à l'aide de @Role, puis en utilisant la chose des sorties de discordance.
Généralement quelque chose comme <@ & randomnumbers> p> p>