DiscordAPIError[10008]: Unknown Message - discord.js

39 views Asked by At

I used the distube module to make a music system on my Discord bot.

so here's my code.

const client = require("../../index.js");
const { EmbedBuilder } = require("discord.js");
const DB = require("../../Structures/Schemas/MusicDB.js");
const MusicEmbed = require("../../Systems/MusicEmbed.js");
const MusicButtons = require("../../Systems/MusicButtons.js");

client.distube
  .on("playSong", async (queue, song) => {
    const message = await queue.textChannel.send({
      embeds: [MusicEmbed(queue, song)],
      components: MusicButtons,
    });
    const update = setInterval(() => {
      message.edit({ embeds: [MusicEmbed(queue, song)] });
    }, 5000);
    module.exports = { message, update };
  })
  .on("addSong", (queue, song) => {
    let embed = MusicEmbed(queue, song);
    embed.data.fields = null;
    queue.textChannel.send({
      embeds: [
        embed
          .setDescription(
            `<:plus_988409343743496232:1202215484318302208> | 加入 [${song.name}](${song.url}) - \` ${song.formattedDuration} \` 到清單中`
          )
      ],
    });
  })
  .on("addList", (queue, playlist) => {
    let embed = MusicEmbed(queue, song);
    embed.data.fields = null;
    queue.textChannel.send({
      embeds: [
        embed
          .setDescription(
            `<:plus_988409343743496232:1202215484318302208> | 加入 [${playlist.name}](${playlist.url}) 播放清單 (\` ${
              playlist.songs.length
            } \`首歌) 到清單中`
          )
      ],
    });
  })
  .on("error", (channel, e) => {
    channel.send({
      embeds: [
        new EmbedBuilder()
          .setColor("Red")
          .setDescription(`<:outage_868122243845206087:1202112862990897172> | 發生錯誤: ${e.toString().slice(0, 1974)}`),
      ],
    });
  })
  .on("empty", (queue) =>
    queue.textChannel.send({
      embeds: [
        new EmbedBuilder()
          .setColor("Red")
          .setDescription("<:nomember_859424400557604886:1201843730626400256> | 語音頻道是空的!<:leave_860487640113217546:1202217506991771658>離開頻道中..."),
      ],
    })
  )
  .on("finish", (queue) =>
    queue.textChannel.send({
      embeds: [
        new EmbedBuilder()
          .setColor("Red")
          .setDescription(`<:musicstop_861852633979420712:1201843718215438386> | 清單播放完畢!`)
          .setTimestamp(),
      ],
    })
  )
  .on("initQueue", async (queue) => {
    let Data = await DB.findOne({ GuildID: queue.id });
    if (!Data) {
      Data = new DB({
        GuildID: queue.id,
        volume: queue.volume,
        autoplay: queue.autoplay,
        repeatMode: queue.repeatMode,
      });
      await Data.save();
    }
    queue.autoplay = Data.autoplay;
    queue.volume = Data.volume;
    queue.repeatMode = Data.repeatMode;
  })
  .on("finishSong", async (queue, song) => {
    const { message, update } = require("./DistubeEvents");
    await message.edit({ embeds: [MusicEmbed(queue, song)] });
    if (queue.repeatMode === 0 && !queue.songs[1]) {
      clearInterval(update);
      await queue.textChannel.messages.delete(message.id);
    }
  });

Error:

DiscordAPIError[10008]: Unknown Message
    at handleErrors (/opt/render/project/src/node_modules/@discordjs/rest/dist/index.js:722:13)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async SequentialHandler.runRequest (/opt/render/project/src/node_modules/@discordjs/rest/dist/index.js:1120:23)
    at async SequentialHandler.queueRequest (/opt/render/project/src/node_modules/@discordjs/rest/dist/index.js:953:14)
    at async _REST.request (/opt/render/project/src/node_modules/@discordjs/rest/dist/index.js:1266:22)
    at async GuildMessageManager.edit (/opt/render/project/src/node_modules/discord.js/src/managers/MessageManager.js:187:15)
    at async _DisTube.<anonymous> (/opt/render/project/src/Events/Distube/DistubeEvents.js:93:5) {
  requestBody: [Object],
  rawError: [Object],
  code: 10008,
  status: 404,
  method: 'PATCH',
  url: 'https://discord.com/api/v10/channels/1211623448066002974/messages/1211638511241789440'
}
0

There are 0 answers