Estuve buscando cómo enviar una imagen con un comando de bot y solo encontré cómo enviar la misma imagen desde el repositorio del proyecto o una URL estática, pero no vi cómo hacer un comando que permita al usuario para elegir una imagen y enviarla. Necesito esta función para crear un comando de bot que envíe un anuncio en un canal específico, e incluir una imagen en ese anuncio debería ser opcional.
He intentado esto:
async execute(interaction) { if (!interaction.member.roles.cache.some((role) => role.name === "admin")) { await interaction.reply(`You don't have access !`); return; } else { const { MessageAttachment, MessageEmbed } = require("discord.js"); //extracting the image path const image_path = interaction.options.getString("image_path"); const file = new MessageAttachment(image_path); const exampleEmbed = new MessageEmbed().setTitle("Announcement image").setImage(image_path); //converting the msg to string const message = interaction.options.getString("message"); await interaction.reply(`${message} message sent !`); channel.send({ embeds: [exampleEmbed], files: [file] }); } }