Estoy tratando de hacer un comando de reproducción para mi bot de discordia, pero me da este error:
TypeError: adapterCreator no es una función
Aquí está mi código:
const ytdl = require('ytdl-core'); module.exports ={ name:'play', description:'aaaaaaaaaaaam', execute(message, args){ const { joinVoiceChannel, createAudioPlayer, createAudioResource, generateDependencyReport } = require('@discordjs/voice'); const url = 'https://www.youtube.com/watch?v=NevKVKbCNy4&ab_channel=NTDM' const stream = ytdl(url, {filter: 'audioonly'}); const player = createAudioPlayer(); const resource = createAudioResource(stream); const GuildMember = message.author.id; const connection = joinVoiceChannel({ channelId: GuildMember.voiceChannel, guildId: message.guild.id, adapterCreator: message.channel.guild.voiceAdatperCreator }) connection.subscribe(player); player.play(resource); console.log(generateDependencyReport()); } }El problema radica en su joinVoiceChannel() :
const connection = joinVoiceChannel({ channelId: message.channelId, guildId: message.guildId, adapterCreator: message.guild.voiceAdapterCreator }); Su const GuildMember = message.author.id es en realidad una cadena , en cuyo caso no puede hacer GuildMember.voiceChannel .
message.guildId & message.channelId son abreviaturas para obtener las identificaciones respectivas.
Sugiero leer la documentación de voz aquí :