Soy un poco nuevo en la codificación de discord.js y quería que mi bot de música permaneciera en el canal para siempre, pero si no hay nadie escuchando, se cerrará al final de la cola de reproducción de música.
Esto es lo que probé:
const queue = message.client.queue.get(message.guild.id); if (!song) { const endembed = new MessageEmbed().setColor("#F0EAD6") .setAuthor(`Music Queue ended.`) if (queue.channel.members.size != 1) message.client.queue.delete(message.guild.id); return queue.textChannel.send(endembed).catch(console.error); if (!song) queue.channel.leave() message.client.queue.delete(message.guild.id); return queue.textChannel.send(endembed).catch(console.error); }El problema es que el bot no se irá (si está solo) al final de la reproducción de música.
Entonces, el bot debe permanecer para siempre en el canal si hay alguien en el canal que no es otro bot, y abandonar el canal si la cola termina y no hay nadie en el canal.
Intenta agregar llaves a tu código de esta manera:
if (!song) { const endembed = new MessageEmbed().setColor("#F0EAD6").setAuthor(`Music Queue ended.`); if (queue.channel.members.size != 1){ message.client.queue.delete(message.guild.id); return queue.textChannel.send(endembed).catch(console.error); } queue.channel.leave(); message.client.queue.delete(message.guild.id); return queue.textChannel.send(endembed).catch(console.error); }