protected async Task InitializeAsync(BaseSocketClient baseSocketClient, Configuration configuration) { this._baseSocketClient = baseSocketClient; var shards = baseSocketClient switch { DiscordSocketClient socketClient => await socketClient.GetRecommendedShardCountAsync(), DiscordShardedClient shardedClient => shardedClient.Shards.Count, _ => 1 }; this.Configuration = configuration.SetInternals(baseSocketClient.CurrentUser.Id, shards); Players = new ConcurrentDictionary <ulong, LavaPlayer>(); _cancellationTokenSource = new CancellationTokenSource(); baseSocketClient.UserVoiceStateUpdated += OnUserVoiceStateUpdated; baseSocketClient.VoiceServerUpdated += OnVoiceServerUpdated; _socketHelper = new SocketHelper(configuration, Log); _socketHelper.OnMessage += OnMessage; _socketHelper.OnClosed += OnClosedAsync; await _socketHelper.ConnectAsync().ConfigureAwait(false); }
protected async Task InitializeAsync(BaseSocketClient baseSocketClient, Configuration configuration) { this.baseSocketClient = baseSocketClient; logSeverity = configuration.LogSeverity.Value; _players = new ConcurrentDictionary <ulong, LavaPlayer>(); baseSocketClient.UserVoiceStateUpdated += OnUserVoiceStateUpdated; baseSocketClient.VoiceServerUpdated += OnVoiceServerUpdated; socketHelper = new SocketHelper(configuration, _log); socketHelper.OnMessage += OnMessage; await socketHelper.ConnectAsync().ConfigureAwait(false); }