Бот Discord не присоединяется к голосовому каналу (JS) - PullRequest
0 голосов
/ 14 марта 2020

Я делаю простой диск-бот с 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 голосов
/ 15 марта 2020

Когда я углубился в документацию, я заметил, что код должен быть

message.member.voice.channel.join()

, а не

message.member.voiceChannel.join()
...