public FullTrack GetSong() { var client = new SpotifyApiClient(); var res = client.GetSomeSong(); return(res); }
static async Task Main(string[] args) { var configuration = new ConfigurationBuilder() .AddJsonFile("appsettings.json") .Build(); var spotifyClientConfig = configuration.GetSection(nameof(SpotifyClientConfiguration)).Get <SpotifyClientConfiguration>(); var spotifyAuthConfig = configuration.GetSection(nameof(SpotifyAuthenticationConfiguration)).Get <SpotifyAuthenticationConfiguration>(); Directory.SetCurrentDirectory(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location)); var cts = new CancellationTokenSource(); Console.CancelKeyPress += (_, e) => { e.Cancel = true; // prevent the process from terminating. cts.Cancel(); }; var cache = new MemoryCache(new MemoryCacheOptions()); var logger = new LoggerFactory(); var authClient = new SpotifyAuthenticationCodeClient(spotifyAuthConfig, cache, logger); //var authClient = new SpotifyCredentialClient(spotifyAuthConfig, cache, logger); var client = new SpotifyApiClient(spotifyClientConfig, authClient, logger); var service = new SpotifyPlaylistService(client, logger); var generator = new ConsoleMenuGenerator(service, cache); await generator.GenerateMainMenu(cts.Token); }
public async Task <ActionResult> Search(string q) { var client = new SpotifyApiClient(); var searchResult = await client.Search(q); var model = new SearchResultViewModel { SearchResult = searchResult, SearchString = q }; return(View("_SearchResult", model)); }
public async Task <ActionResult> Index() { var client = new SpotifyApiClient(); var genres = await client.GetGenreSeed(); // Write a class for building viewmodels var model = new StartPageViewModel { Genres = genres.Genres }; return(View("Index", model)); }
public async Task <JsonResult> GetRecommendations(RecommendationsRequest recommendationsRequest) { var spotifyApiClient = new SpotifyApiClient(); var recommendations = await spotifyApiClient.SearchRecommendationsAsync(recommendationsRequest, 3); var returnHtml = new List <string>(); foreach (var item in recommendations.Tracks) { returnHtml.Add($"{item.Type}/{item.Id}"); } return(Json(returnHtml, JsonRequestBehavior.AllowGet)); }
// GET: ApiTest public async Task <ActionResult> ShowRecommend(string searchString, string searchGenre) { if (!String.IsNullOrEmpty(searchString)) { var client = new SpotifyApiClient(); var response = await client.SearchArtistsAsync(searchString, searchGenre); var artists = response.Artists.Items; return(View(artists)); } else { return(View("Search")); } }
public async Task <ActionResult> GetRecommendations(string genres, decimal danceability, decimal instrumentalness, decimal valence, int popularity) { // Must make genres mandatory var genreList = JsonConvert.DeserializeObject <List <string> >(genres); var client = new SpotifyApiClient(); var recommendationsResponse = await client.GetRecommendationsByGenreSeed(genreList, danceability, instrumentalness, valence, popularity); var severalTrackResponse = await client.GetSeveralTracks(recommendationsResponse.Tracks.Select(x => x.Id).ToList()); var model = new RecommendationResultViewModel { Tracks = severalTrackResponse.Tracks }; return(View("_RecommendationResult", model)); }
public async Task <ActionResult> Create([Bind(Include = "Id, Artist, Tempo, Energy, Danceability, Mode")] RecommendationBasis basis) { if (ModelState.IsValid) { var client = new SpotifyApiClient(); var response = await client.SearchArtistsAsync(basis.Artist); var artists = response.Artists; GetRecommendationsResponse recommendations = null; if (artists.Total > 0) { var artist = artists.Items[0]; var energy = basis.Energy * 0.01f; var danceability = 0.0f; var mode = 0; if (basis.Danceability) { danceability = 1.0f; } if (basis.Mode) { mode = 1; } recommendations = await client.GetRecommendationsAsync(artist.Id, basis.Tempo, energy, danceability, mode); } else { recommendations = await client.GetRecommendationsAsync("0OdUWJ0sBjDrqHygGUXeCF"); } return(View("Details", recommendations.Tracks)); } return(View(basis)); }
public async Task <ActionResult> ShowMeMore() { float.TryParse(Request.QueryString["energy"], out float energy); float.TryParse(Request.QueryString["danceability"], out float danceability); float.TryParse(Request.QueryString["acousticness"], out float acousticness); float.TryParse(Request.QueryString["loudness"], out float loudness); float.TryParse(Request.QueryString["valence"], out float valence); var genre = Request.QueryString["genre"]; RecommendationsRequest recomendationsRequest = new RecommendationsRequest { Energy = energy, Danceability = danceability, Acousticness = acousticness, Loudness = loudness, Valence = valence, Genre = genre }; var spotifyApiClient = new SpotifyApiClient(); var recommendations = await spotifyApiClient.SearchRecommendationsAsync(recomendationsRequest, 24); return(View(recommendations)); }
public HomeController(SpotifyApiClient repository, IMemoryCache cache) { this.repository = repository; this.cache = cache; }
public SpotifyPlaylistService(SpotifyApiClient client, ILoggerFactory logger) { _client = client; _logger = logger.CreateLogger <SpotifyPlaylistService>(); }
public TrackListModelBuilder(RecommendationModel recommendationModel) { _recommendationModel = recommendationModel; _client = new SpotifyApiClient(); }
static void Main(string[] args) { var client = new SpotifyApiClient(); client.GetSomeSong(); }