web-dev-qa-db-fra.com

Envoyer un message avec Discord.js

Alors. J'essaie de créer un bot discord, mais je ne comprends pas très bien Discord.js. Mon code ressemble à ceci:

client.on("message", function(message) {
    if(message.content === "ping") {
        client.message.send(author, "pong");
    }
});

Et le problème est que je ne comprends pas très bien comment envoyer un message.

Quelqu'un peut-il m'aider?

13
Gabe

Vous avez une erreur dans votre ligne .send(). Le code actuel que vous avez est utilisé dans une version antérieure de la bibliothèque discord.js et la fonction d'envoi a été modifiée.

Pour envoyer un message, utilisez cette ligne:

message.channel.send('My Message')

Si vous obtenez une erreur indiquant que message n'est pas defined, assurez-vous d'avoir placé la ligne dans votre gestionnaire d'événements de message.

client.on("message", function(message) {
  //message sending goes here
});

Vous pouvez également envoyer un message à un canal spécifique, que vous pouvez utiliser à l’aide de la ligne ci-dessous.

client.channels.get(channelID).send('My Message');

Ou si vous préférez, le canal par défaut d'une guilde (le # canal général créé lors de la création de la guilde)

guildObj.defaultChannel.send('My Message');

J'espère que cela a aidé,

- Spy

22
Arct

Ci-dessous, le script de présentation qui envoie un message direct à l'utilisateur.

Dans ce cas, notre message n'est pas une réponse mais un nouveau message est envoyé directement à l'utilisateur sélectionné.

require('dotenv').config({ path: __dirname + '/.env.local' });

const Discord = require("discord.js");
const client = new Discord.Client();

client.on("ready", () => {
    console.log(client.users.get('ID_OF_USER').send("hello"));
});

client.login(process.env.DISCORD_BOT_TOKEN);

Documentation complémentaire:

https://github.com/AnIdiotsGuide/discordjs-bot-guide/blob/master/frequently-asked-questions.md#users-and-members

0
Daniel