He estado buscando esto en línea durante horas y no he podido encontrar nada nuevo.
Sin embargo, sé que el material de audio está en un paquete diferente ahora.
Sé que llegué un poco tarde y que ya hay una respuesta, pero aquí hay un código que usa las bibliotecas discord.js y @discordjs/voice
npm i discord.js npm i @discordjs/voice //requirements const discord = require('discord.js') const voice = require('@discordjs/voice') const client = new discord.Client({intents: Object.values(discord.Intents.FLAGS)}) //Object.values(discord.Intents.FLAGS) is used to get every intents //on ready client.on('ready', () => { //log username console.log(client.user.username) }) // var connection //when a message is sent client.on('messageCreate', (message) => { //split message by args const args = message.content.split(' ') if(args[0] == "join") { //check if the message author is in a voice channel if(message.guild.members.cache.get(message.author.id) == null) return //create a new voice connection (join a voice channel) connection = voice.joinVoiceChannel({ channelId: message.guild.members.cache.get(message.author.id).voice.channel.id, //the id of the channel to join (we're using the author voice channel) guildId: message.guild.id, //guild id (using the guild where the message has been sent) adapterCreator: message.guild.voiceAdapterCreator //voice adapter creator }) connection.receiver.speaking.on('start', (userId) => { //actions here console.log(userId) }) } if(args[0] == "destroy") { if(connection == undefined) return message.channel.send('the bot isn\'t in a voice channel') //leave connection.destroy() connection = undefined } }) client.login("token here")