public static async void PlayRadio(RadioStation station) { AudioService.Playlist.Clear(); try { _currentRadio = station; if (!string.IsNullOrEmpty(_sessionId)) { //удаляем предыдущую сессию, чтобы не засорять Echonest (и потому что есть ограничение в 1000 сессий) await DeleteSession(_sessionId); } if (station.Songs == null) { await CreateArtistsSession(station.Artists.Select(s => s.Name)); } else { await CreateSongsSession(station.Songs.Select(s => s.Id)); } if (_futureSongs != null && _futureSongs.Count > 0) { AudioService.SetCurrentPlaylist(new List <Audio>(), true); PlaySong(_futureSongs.First()); } } catch (Exception ex) { LoggingService.Log(ex); } }
public static void LogOutVk() { AudioService.Stop(); AudioService.CurrentAudio = null; AudioService.SetCurrentPlaylist(null); AudioService.Clear(); _vkontakte.AccessToken.Token = null; _vkontakte.AccessToken.UserId = 0; _vkontakte.AccessToken.ExpiresIn = DateTime.MinValue; Settings.Instance.AccessToken = null; Settings.Instance.Save(); ViewModelLocator.Main.ShowSidebar = false; Messenger.Default.Send(new NavigateToPageMessage() { Page = "/Main.LoginView" }); }