Бот Discord, который воспроизводит аудиофайл, когда кто-то присоединяется - PullRequest
3 голосов
/ 16 апреля 2019

Я бы хотел, чтобы бот подключался к голосовому каналу, когда кто-то присоединяется, а затем воспроизводил звуковой файл.

Пока что я заставил бота присоединиться к голосовому каналу, но он просто не воспроизводит звук и не показывает ошибок, поэтому я не знаю, что происходит не так.

const Discord = require('discord.js');
const bot = new Discord.Client();
bot.login('BOT TOKEN');

bot.on('voiceStateUpdate', (oldMember, newMember) => {
  let newUserChannel = newMember.voiceChannel
  let oldUserChannel = oldMember.voiceChannel
  let textChannel = oldMember.guild.channels.get('TEXTCHANNEL ID')

  if(oldUserChannel === undefined && newUserChannel !== undefined) {

    if (newMember.id === 'MEMEBER ID')         //Member 1
    {   
       newUserChannel.join()
       .then(connection => {
          console.log("Joined voice channel!");
          const dispatcher = connection.playFile("C:\Users\NAME\Documents\Welcome_Bot\music\bossman.mp3");

          dispatcher.on("end", end => {newUserChannel.leave()});
       })
        .catch(console.error);

    }
      else if (newMember.id === 'MEMEBER ID')       //Member 2
      {
       textChannel.send('Hello Member 2')
      }
        else if (newMember.id === 'MEMEBER ID')      //Member 3
        {
          textChannel.send('Hello Member 3')
        }
           else                                      //Random
           {
             textChannel.send("Hello") 
           } 
  } 
});
...