Intenté hacer un comando rickroll como este:
client.on('message', message => { if (message.content.startsWith('music plz')) { const voiceChannel = message.member.voice.channel; if (!voiceChannel) { return message.reply(`Wow what a scrub, join a Voice Channel first`); } voiceChannel.join() .then(connection => { const stream = ytdl('https://www.youtube.com/watch?v=dQw4w9WgXcQ', { filter: 'audioonly' }); const dispatcher = connection.playStream(stream, streamOptions); }) Se une al VC y da un error cuando no está en VC pero no reproduce música, ¿qué estoy haciendo mal? Uso Discord.js v12.5 y soy nuevo en esto.
Consulta la guía Aquí tienen una guía de cómo hacerlo. Además, actualice a v13 , es mucho mejor. Algo como esto:
const fs = require('fs'); const broadcast = client.voice.createBroadcast(); // From a path broadcast.play('audio.mp3'); // From a ReadableStream broadcast.play(fs.createReadStream('audio.mp3')); // From a URL broadcast.play('http://myserver.com/audio.aac');