Estoy tratando de hacer que mi bot deje el canal de voz, usando el código de la guía discordjs (discord versión dev 14.0.0)
cuando trato de acceder a la conexión creada, aparece el siguiente error: ReferenceError: myVoiceChannel is not defined .
mi código en el comando de licencia:
const Command = require('../Structures/Command.js'); const { getVoiceConnection } = require("@discordjs/voice"); const connection = getVoiceConnection(myVoiceChannel.guild.id); module.exports = new Command({ name: "lvc", description: "leaves voice", permission: "CONNECT", async run(message, args, client) { connection.destroy(); } })mi código en el comando de unión:
const Command = require('../Structures/Command.js'); const { VoiceConnectionStatus, AudioPlayerStatus, AudioPlayer, joinVoiceChannel } = require('@discordjs/voice'); module.exports = new Command({ name: "join", description: "joins voice", permission: "CONNECT", async run(message, args, client) { const connection = joinVoiceChannel({ channelId: "904277856773869583", guildId: message.guild.id, adapterCreator: message.guild.voiceAdapterCreator }) }, })En su primer código ha agregado el código
const connection = getVoiceConnection(myVoiceChannel.guild.id); En ninguna parte de su código ha definido myVoiceChannel . Esta es la razón por la que se lanza este error. Podrías usar este ejemplo en su lugar:
const Command = require('../Structures/Command.js'); const { getVoiceConnection } = require("@discordjs/voice"); module.exports = new Command({ name: "lvc", description: "leaves voice", permission: "CONNECT", async run(message, args, client) { const connection = getVoiceConnection(message.guild.id); if(connection) connection.destroy(); else return message.channel.send({ content: `I am not connected to a voice channel` }); } })