我正在用node.js做一个简单的不和谐机器人。我让它运行并响应,但无法将其传给语音通道 这是我正在使用的代码
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("Give me a link to play");
return;
}
if (!message.member.voiceChannel) {
message.channel.send("Join a voice channel to play music!");
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.voiceChannel.join().then(connection => {
message.reply("Here I am!");
});
break;
}
});
即使我在语音通道中,它也始终显示“加入语音通道”消息。
答案 0 :(得分:0)
当我深入文档时,我发现代码应该是
message.member.voice.channel.join()
而不是
message.member.voiceChannel.join()