Beispiel #1
0
        private Task InitLavalink()
        {
            Lavalink = new LavalinkClient(new ClientOptions
            {
                UserID     = _client.CurrentUser.Id,
                HostRest   = "http://localhost:2333",
                HostWS     = "ws://localhost:8060",
                Password   = "******",
                UseLogging = true,
                LogLevel   = LogLevel.Debug
            }, _client);

            Lavalink.Start();

            return(Task.CompletedTask);
        }
Beispiel #2
0
        private static async Task Main(string[] args)
        {
            using (var client = new DiscordClient(TokenType.Bot, Environment.GetEnvironmentVariable("NOT_QUAHU")))
            {
                var pahoe = new LavalinkClient(client, new LavalinkConfiguration());
                client.Ready += async e =>
                {
                    await pahoe.StartAsync();

                    var result = await pahoe.SearchYouTubeAsync("https://www.youtube.com/watch?v=XZDt-O6r7rM");

                    var channel = client.GetChannel(412378943354568715) as CachedVoiceChannel;
                    var player  = await pahoe.ConnectAsync(channel);

                    await player.SetVolumeAsync(10);

                    await player.PlayAsync(result.Tracks[0]);
                };

                await client.RunAsync();
            }
        }
Beispiel #3
0
        private Task InitLavalink(ReadyEventArgs args)
        {
            _lavalinkClient = new LavalinkClient(new ClientOptions {
                UserID     = _client.CurrentUser.Id,
                HostRest   = "http://localhost:2333",
                HostWS     = "ws://localhost:8060",
                Password   = "******",
                UseLogging = true,
                LogLevel   = Lavalink.NET.Types.LogLevel.Debug
            },
                                                 _client);
            _client.VoiceStateUpdated += async e =>
            {
                await _lavalinkClient.VoiceStateUpdateAsync(new VoiceStateUpdate
                {
                    ChannelID = e.Channel.Id,
                    GuildID   = e.Guild.Id,
                    SessionID = e.SessionId,
                    UserID    = e.User.Id,
                    Deaf      = e.After.IsServerDeafened,
                    Mute      = e.After.IsServerMuted,
                    Suppress  = e.After.IsSuppressed,
                    SelfDeaf  = e.After.IsSelfDeafened,
                    SelfMute  = e.After.IsSelfMuted
                });
            };
            _client.VoiceServerUpdated += async e =>
            {
                await _lavalinkClient.VoiceServerUpdateAsync(new VoiceServerUpdate
                {
                    Endpoint = e.Endpoint,
                    GuildID  = e.Guild.Id,
                    Token    = e.VoiceToken
                });
            };
            _lavalinkClient.Start();

            return(Task.CompletedTask);
        }