Así que tengo un comando 'decir', que no responde al usuario, sino que simplemente "dice" lo que el usuario escriba. Pero parece que mi bot espera responder al usuario, lo que creo que es innecesario en este caso. ¿Hay alguna manera de finalizar la interacción sin que el bot agote el tiempo y diga que ocurrió un error? Sé que deferReply existe, pero eso solo hace que el bot muestre el mensaje "El bot está pensando...". Simplemente no quiero que se envíe ninguna respuesta. Aquí está el código relevante:
async execute(interaction) { await interaction.channel.send(interaction.options.getString("string")); }EDITAR: creo que la forma más cercana de hacer esto sería enviar un mensaje y luego eliminarlo inmediatamente después:
async execute(interaction) { await interaction.reply({ content: `.`, }); await interaction.deleteReply(); await interaction.channel.send(interaction.options.getString("string")); },Discord realmente debería agregar la capacidad de finalizar silenciosamente interacciones como:
await interaction.noReply();No existe una solución real para no responder a un comando de barra.
A continuación solo funcionará para menús y botones seleccionados.
<Interaction>.deferUpdate() reconoce la interacción sin hacer nada más.
No se requerirán errores ni respuestas después de que se reconozca una interacción.