用NodeJS使不和谐机器人发送带消息的图片

2022-02-22 00:00:00 discord node.js javascript

我有几张图片,都是带有直接图片链接的imgur(格式:https://i.imgur.com/XXXXXX.jpg),还有一个用NodeJS制作的不和谐机器人。

我这样发送消息:

bot.sendMessage({
    to: channelID,
    message: "My Bot's message"
});

我已经尝试过:

bot.sendMessage({
    to: channelID,
    message: "My Bot's message",
    file: "https://i.imgur.com/XxxXxXX.jpg"
});

但我只收到文本。我查过了,this question是唯一一个接近于说出我需要做什么的人,但它不起作用。

那么我应该怎么做呢?

以下是机器人的创建方式:

var bot = new Discord.Client({
   token: auth.token,
   autorun: true
});
bot.on('ready', function (evt) {
    logger.info('Connected');
    logger.info('Logged in as: ');
    logger.info(bot.username + ' - (' + bot.id + ')');
});
bot.on('message', function (user, userID, channelID, message, evt) {
    // My code
}

解决方案

ClientUser.sendMessage is deprecated,其选项中的file参数也是如此。您应该使用Channel.send(message, options)files作为字符串数组或FileOptions。

bot.on('messageCreate' message => {
    message.channel.send("My Bot's message", {files: ["https://i.imgur.com/XxxXxXX.jpg"]});
});

如果您想坚持使用已弃用的方法,ClientUser.sendFile可能会让您感兴趣,不过我建议您移到更新的内容。

相关文章