public void PlayRadio([FromUri] string deviceId, [FromBody] RadioStationDto radioStation)
        {
            var url        = _radioStationService.GetStreamUrl(radioStation.Id);
            var parameters = new Dictionary <string, string>
            {
                { "Stream", url },
                { "Title", radioStation.Name }
            };

            _messageQueue.Publish(new CommandMessage("Sonos", deviceId, "Play Radio", parameters));
        }
        public async Task Star([FromBody] RadioStationDto dto)
        {
            var radioStation = new TuneInRadioStation
            {
                Id       = dto.Id,
                Name     = dto.Name,
                ImageUrl = dto.ImageUrl
            };

            await _favoriteRadioStationService.AddAsync(radioStation);
        }
        public async Task <IHttpActionResult> Unstar([FromBody] RadioStationDto dto)
        {
            var favorites = await _favoriteRadioStationService.GetAsync();

            var favorite = favorites.SingleOrDefault(f => f.Id.Equals(dto.Id, StringComparison.Ordinal));

            if (favorite == null)
            {
                return(BadRequest());
            }

            await _favoriteRadioStationService.RemoveAsync(favorite);

            return(Ok());
        }