museofficial / muse

🎧 a self-hosted midwestern Discord music bot that doesn't suck
MIT License
895 stars 237 forks source link

Crash when trying to skip a song. #1098

Closed Drahgoone closed 6 days ago

Drahgoone commented 1 month ago

Getting the following when trying to skip a song when I have one song playing and another in the queue.

✔ Ready! Invite the bot with https://discordapp.com/oauth2/authorize?client_id=1284935208747143321&scope=bot%20applications.commands&permissions=36700160 /home/container/node_modules/discord.js/node_modules/@discordjs/rest/dist/index.js:640 throw new DiscordAPIError(data, "code" in data ? data.code : data.error, status, method, url, requestData); ^ DiscordAPIError[50006]: Cannot send an empty message at handleErrors (/home/container/node_modules/discord.js/node_modules/@discordjs/rest/dist/index.js:640:13) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async SequentialHandler.runRequest (/home/container/node_modules/discord.js/node_modules/@discordjs/rest/dist/index.js:1021:23) at async SequentialHandler.queueRequest (/home/container/node_modules/discord.js/node_modules/@discordjs/rest/dist/index.js:862:14) at async REST.request (/home/container/node_modules/discord.js/node_modules/@discordjs/rest/dist/index.js:1387:22) at async VoiceChannel.send (/home/container/node_modules/discord.js/src/structures/interfaces/TextBasedChannel.js:162:15) at async player_default.onAudioPlayerIdle (file:///home/container/src/services/player.ts:1:9876) { requestBody: { files: [], json: { content: undefined, tts: false, nonce: undefined, embeds: [], components: undefined, username: undefined, avatar_url: undefined, allowed_mentions: undefined, flags: undefined, message_reference: undefined, attachments: undefined, sticker_ids: undefined, thread_name: undefined } }, rawError: { message: 'Cannot send an empty message', code: 50006 }, code: 50006, status: 400, method: 'POST', url: 'https://discord.com/api/v10/channels/368973249578532866/messages' } Node.js v20.17.0 file:///home/container/node_modules/execa/lib/error.js:59 error = new Error(message); ^ Error: Command failed with exit code 1: tsx src/scripts/migrate-and-start.ts at makeError (file:///home/container/node_modules/execa/lib/error.js:59:11) at handlePromise (file:///home/container/node_modules/execa/index.js:119:26) at process.processTicksAndRejections (node:internal/process/task_queues:95:5) at async file:///home/container/src/scripts/run-with-database-url.ts:1:143 { shortMessage: 'Command failed with exit code 1: tsx src/scripts/migrate-and-start.ts', command: 'tsx src/scripts/migrate-and-start.ts', escapedCommand: 'tsx "src/scripts/migrate-and-start.ts"', exitCode: 1, signal: undefined, signalDescription: undefined, stdout: undefined, stderr: undefined, failed: true, timedOut: false, isCanceled: false, killed: false } Node.js v20.17.0

Drahgoone commented 1 month ago

After more testing, it only happens when auto-announce-next-song is set to true.

Codixer commented 6 days ago

I seem to be unable to replicate this error: image

Mind trying with node 18? It might be a version mismatch.