我有一个正在运行的不和谐机器人,可以响应人们,我什至让它通过斜线命令告诉我特定邮政编码的天气和时间。但是当有人发送图像时我很难让它回复。
当用户在频道中上传图像时,我希望不和谐机器人重播“看起来有人正在发送...”。有谁能帮帮兄弟吗?
我找到了一些解决方案,但它们已经有 5 岁多了,而且我没有取得任何进展。
您可以首先检测来自
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
}
}
}
}