javascript 如何使用discord.js bot回复带有文件的消息?

yeotifhr  于 2023-10-14  发布在  Java
关注(0)|答案(1)|浏览(99)

我试着做一个机器人,当你打字的时候!roll'它在数组中选择一个随机的视频,并用它来响应消息。
JS部分工作,但文件不发送。

const { Client, GatewayIntentBits } = require('discord.js');

const client = new Client({
    intents: [
        GatewayIntentBits.Guilds,
        GatewayIntentBits.GuildMessages,
        GatewayIntentBits.MessageContent,
    ],
});

const prefix = '!';
const jets = [
    "assets/01.mp4",
    "assets/02.mp4",
    "ETC..."
]

client.on("ready", () => {
    console.log("Prêt à lancer les dés !");
});

client.on("messageCreate", message => {
    if(!message.content.startsWith(prefix) || message.author.bot) return;

    const args = message.content.slice(prefix.length).split(/ +/);
    const command = args.shift().toLowerCase();

    console.log(message.author.username + " a utilisé : " + prefix+command);
    if(command  === "roll") {
        const random = Math.floor(Math.random() * jets.length);
        message.reply("Dés lancés :", {files: [jets[random]]});
    }
    else if(command === "help") {
        message.reply("Utilise " + prefix + "roll pour lancer les dés.");
    }
});

我所期望的是这种类型的React,从机器人的任何人谁类型'!roll':

如果你有任何想法,可能会很有帮助!

sshcrbum

sshcrbum1#

您正在发送string作为文件。files仅接受数组

message.reply({ 
    content: "Dés lancés :", 
    files: [{ 
        name: 'file.mp4', 
        attachment: jets[random] // path or buffer
    }] 
});

相关问题