Estoy tratando de eliminar la respuesta del bot al comando de purga del usuario.
module.exports = { data: new SlashCommandBuilder() .setName("purge") // Command name .setDescription("Deletes a set number of messages") // Command description .addNumberOption((option) => // Adds an argument option .setName("number") // Argument name .setDescription("Sets the number of messages to delete") // Argument description .setRequired(true), // Argument requirement ), async execute(interaction) { if (interaction.member.permissions.has("MANAGE_MESSAGES") && interaction.guild.me.permissions.has("MANAGE_MESSAGES")) { await interaction.channel.bulkDelete(interaction.options.getNumber("number")); await interaction.reply(`Deleted ${interaction.options.getNumber("number")} message(s) successfully.`); setTimeout(() => interaction.message.delete(), 1000); } else if (interaction.member.permissions.has("MANAGE_MESSAGES") === false) { interaction.reply("You do not have the **Manage Messages** permission. Please ask a moderator to give you this permission.") } else { interaction.reply("I have not been given the relevant permissions to do this. Please contact a moderator and ask them to give me the **Manage Messages** permission.") } } }Todas las soluciones que he probado arrojan un "no es una función" o "No se puede leer la propiedad de indefinido". ¿Alguien podría ayudar con esto? ¡Gracias!
Utilice <Interaction>.deleteReply()
Utilice el método .deleteReply() :
async execute(interaction) { const replyMessage = await interaction.reply('message'); setTimeout(() => interaction.deleteReply(), 10000); }