我正在尝试编写自己的音乐机器人,但它没有加入我所在的语音频道。其他一切都很好。我认为我应该使用 npm 安装一个特定的东西,但我不知道这是否正确,我不确定所以有人可以告诉我我应该怎么做才能解决这个问题......
这是我的代码:
client.on('message', message => {
let args = message.content.substring(prefix.length).split(" ");
switch (args[0]) {
case 'play':
function play(connection, message) {
var server = servers[message.guild.id];
server.dispatcher = connection.playStream(ytdl(server.queue[0], {filter: "audioonly"}));
server.queue.shift();
server.dispatcher.on("end", function() {
if(server.queue[0]) {
play(connection, message);
} else {
connection.disconnect();
}
});
}
if(!args[1]) {
message.channel.send("You need to provide a link!");
return;
}
if(!message.member.voiceChannel) {
message.channel.send("You must be in a voice channel to use this command!");
return;
}
if(!servers[message.guild.id]) servers[message.guild.id] = {
queue: []
}
var server = servers[message.guild.id];
server.queue.push(args[1]);
if(!message.guild.voiceConnection) message.member.voice.channel.join().then(function(connection) {
play(connection, message);
})
break;
}
});