private void iniciarModoStream() { try { Log.Instance.ImprimirMensaje("Intentando conectar cuenta de Spotify", TipoMensaje.Info, "Spotify.iniciarModoStream()"); Programa.HayInternet(true); Stopwatch crono = Stopwatch.StartNew(); auth = new AuthorizationCodeAuth( clavePublica, clavePrivada, "http://localhost:4002/", "http://localhost:4002/", Scope.UserReadEmail | Scope.UserReadPrivate | Scope.Streaming | Scope.UserReadPlaybackState ); auth.AuthReceived += (sender, payload) => { auth.Stop(); Token token = auth.ExchangeCode(payload.Code).Result; tokenActual = token; _spotify = new SpotifyWebAPI() { TokenType = token.TokenType, AccessToken = token.AccessToken }; crono.Stop(); if (_spotify.AccessToken != null) { cuentaLista = true; cuentaVinculada = true; Programa.config.AppSettings.Settings["VinculadoConSpotify"].Value = "true"; Log.Instance.ImprimirMensaje("Conectado sin errores como " + _spotify.GetPrivateProfile().DisplayName, TipoMensaje.Correcto, crono); } else { cuentaLista = false; cuentaVinculada = false; Log.Instance.ImprimirMensaje("Se ha conectado pero el token es nulo", TipoMensaje.Error, crono); Programa.config.AppSettings.Settings["VinculadoConSpotify"].Value = "false"; } CodigoRefresco = token.RefreshToken; Programa.tareaRefrescoToken = new Thread(Programa.Refresco); Programa.tareaRefrescoToken.Start(); }; auth.Start(); auth.OpenBrowser(); } catch (NullReferenceException) { Programa.HayInternet(false); Console.WriteLine("Algo fue mal"); System.Windows.Forms.MessageBox.Show(Programa.textosLocal.GetString("error_internet")); } catch (HttpRequestException) { Programa.HayInternet(false); Console.WriteLine("No tienes internet"); System.Windows.Forms.MessageBox.Show(Programa.textosLocal.GetString("error_internet")); } }
private async void iniciar() { Log.Instance.ImprimirMensaje("Intentando con Spotify asíncronamente", TipoMensaje.Info, "Spotify.iniciar()"); Stopwatch crono = Stopwatch.StartNew(); Programa.HayInternet(false); try { CredentialsAuth authMetadatos = new CredentialsAuth(clavePublica, clavePrivada); Token token = await authMetadatos.GetToken(); _spotify = new SpotifyWebAPI() { TokenType = token.TokenType, AccessToken = token.AccessToken }; crono.Stop(); if (_spotify.AccessToken != null) { Programa.HayInternet(true); Log.Instance.ImprimirMensaje("Conectado sin errores", TipoMensaje.Correcto, crono); } else { Programa.HayInternet(false); Log.Instance.ImprimirMensaje("Se ha conectado pero el token es nulo", TipoMensaje.Error, crono); } } catch (NullReferenceException) { Programa.HayInternet(false); Log.Instance.ImprimirMensaje("No se ha podido conectar con Spotify", TipoMensaje.Error); System.Windows.Forms.MessageBox.Show(Programa.textosLocal.GetString("error_internet")); } catch (HttpRequestException) { Programa.HayInternet(false); Log.Instance.ImprimirMensaje("No se ha podido conectar con Spotify", TipoMensaje.Error); System.Windows.Forms.MessageBox.Show(Programa.textosLocal.GetString("error_internet")); } }