当用户在聊天中发送图像时进行 Discord 机器人回复

问题描述 投票:0回答:1

我有一个正在运行的不和谐机器人,可以响应人们,我什至让它通过斜线命令告诉我特定邮政编码的天气和时间。但是当有人发送图像时我很难让它回复。

当用户在频道中上传图像时,我希望不和谐机器人重播“看起来有人正在发送...”。有谁能帮帮兄弟吗?

我找到了一些解决方案,但它们已经有 5 岁多了,而且我没有取得任何进展。

javascript discord discord.js
1个回答
0
投票

您可以首先检测来自

Event
MessageCreate
的消息。

您的消息有一个属性

attachments
,它返回一个新的
Collection

之后,您可以简单地检查该消息是否是文件。

它看起来像这样:

const { Events } = require('discord.js');
const path = require('path');

module.exports = {
    name: Events.MessageCreate,
    async execute(message) {
        if (message.channel.id === YOUR_CHANNEL_ID && message.attachments.size > 0) {
            const attachment = message.attachments.first();
            const extension = path.extname(attachment.name).toLowerCase();

            if (extension === ".png") {
                // do something
            }
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.