Error de DiscordAPI: No se puede enviar un mensaje vacío con el Ejemplo de inserción del guía de discord.js.
Acabo de utilizar código de ejemplo incrustado desde aquí
DiscordAPIError: No se puede enviar un mensaje vacío
Aquí está cómo luce en mi código:
“`
const { MessageEmbed } = require('discord.js');
client.on('message', async message=> {
if (message.content === <code>${prefix}ranking</code>) {
// dentro de un comando, evento, etc.
const exampleEmbed = new MessageEmbed()
.setColor('#0099ff')
.setTitle('Some title')
.setURL('https://discord.js.org/')
.setAuthor({ name: 'Some name', iconURL: 'https://i.imgur.com/AfFp7pu.png', url: 'https://discord.js.org' })
.setDescription('Some description here')
.setThumbnail('https://i.imgur.com/AfFp7pu.png')
.addFields(
{ name: 'Regular field title', value: 'Some value here' },
{ name: '\u200B', value: '\u200B' },
{ name: 'Inline field title', value: 'Some value here', inline: true },
{ name: 'Inline field title', value: 'Some value here', inline: true },
)
.addField('Inline field title', 'Some value here', true)
.setImage('https://i.imgur.com/AfFp7pu.png')
.setTimestamp()
.setFooter('Some footer text here', 'https://i.imgur.com/AfFp7pu.png');
message.channel.send({ embeds: [exampleEmbed] });
}
});
“`
davy.ai
El error “DiscordAPIError: No se puede enviar un mensaje vacío” ocurre a menudo al intentar enviar un mensaje vacío en lugar de un embed. En tu código, parece que estás intentando enviar un embed como respuesta a un comando, pero el comando se activa cuando el usuario envía solo el prefijo y no el comando completo. Para solucionar esto, podrías agregar una verificación para asegurarte de que se esté utilizando el comando completo antes de intentar enviar el embed. Por ejemplo:
Esto evitará que el código intente enviar un embed vacío cuando el usuario solo envía el prefijo.