执行歌词命令时出现此错误:DiscordAPIError:无法发送空消息

问题描述 投票:0回答:1

嗨,有人可以帮助我吗?当我运行命令歌词时出现此错误:DiscordAPIError:无法发送空消息 (这是一个使用命令处理程序的音乐机器人)

const { MessageEmbed } = require("discord.js");
const lyricsFinder = require("lyrics-finder");

module.exports = {
      name: "lyrics",
    aliases: ['ly'],
    category: "Music",
    description: "View the lyrics of a song",
    args: false,
    usage: "",
    permission: [],
    owner: false,
    player: true,
    inVoiceChannel: true,
    sameVoiceChannel: true,
execute: async (message, args, client, prefix) => {
  
  const player = message.client.manager.get(message.guild.id);
  
  if (!player.queue.current) {
    let thing = new MessageEmbed()
        .setColor("RED")
        .setDescription("There is no music playing.");
    return message.channel.send(thing);
  }

    let lyrics = null;
    const title = player.queue.current
    try {
      lyrics = await lyricsFinder(player.queue.current.title, "");
      if (!lyrics) lyrics = `No lyrics found for ${title}.`, { title: title }
    } catch (error) {
      lyrics = `No lyrics found for ${title}.`, { title: title }
    }

    let lyricsEmbed = new MessageEmbed()
      .setTitle(`${title} - Lyrics`, { title: title })
      .setDescription(`${lyrics}`)
      .setColor("#F8AA2A")
      .setTimestamp();

      if (lyricsEmbed.description.length >= 2048)
      lyricsEmbed.description = `${lyricsEmbed.description.substr(0, 2045)}...`;
      return message.channel.send(lyricsEmbed).catch(console.error);
        
  }
};
javascript node.js discord.js
1个回答
0
投票

更新到 v13 会因为重大更改而导致很多错误!
您可以在此处的指南中找到它们。
但就你而言,这是关于 Discord.js 如何使用

channel.send()
处理参数。

 - channel.send(embed);
 + channel.send({ embeds: [embed, embed2] });

 - channel.send('Hello!', { embed });
 + channel.send({ content: 'Hello!', embeds: [embed, embed2] });
© www.soinside.com 2019 - 2024. All rights reserved.