Discord Bot没有加入语音频道(JS)

时间:2020-03-14 12:54:43

标签: javascript node.js bots discord

我正在用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;
  }
});

即使我在语音通道中,它也始终显示“加入语音通道”消息。

1 个答案:

答案 0 :(得分:0)

当我深入文档时,我发现代码应该是

message.member.voice.channel.join()

而不是

message.member.voiceChannel.join()