public async Task Listen() { if (!(Context.User is IGuildUser user)) { await ReplyAsync("Not a guild user."); return; } var voiceChannel = user.VoiceChannel; if (voiceChannel == null) { await ReplyAsync("Please connect to a voice channel."); return; } var audioClient = await voiceChannel.ConnectAsync(); listener.SetInputClient(audioClient); await listener.ListenAsync(async() => { var player = new RawAudioPlayer(); player.SetOutput(audioClient); await player.PlayRawFileAsync("media/run.pcm"); }); }
//TODO: Fix strange error with Ninject when using IAudioProvider here. public StandardListener(RawAudioPlayer audio) { this.audio = audio; }