Exemplo n.º 1
0
        public async Task <ActionResult> PostPlayEpisode([FromBody] PlayEpisodeDto data)
        {
            await MopidyProxy.ClearQueue();

            await MopidyProxy.PlayEpisode(data.Uri);

            await MopidyProxy.Play();

            return(new JsonResult(new { Result = "ok" }));
        }
Exemplo n.º 2
0
 public EpisodesModel(string episodeNameFilter)
 {
     Task.Run(async() => {
         Episodes = (await MopidyProxy.GetEpisodes())
                    .Where(_ => _.Name.StartsWith(episodeNameFilter))
                    .Select(_ => {
             var parts = _.Name.Split('_', 3);
             _.Name    = $"{parts[1]} {parts[2].Replace(".mp3", "").Replace(".aac", "").Replace(".m4a", "").Replace('_',' ')}";
             return(_);
         })
                    .OrderByDescending(_ => _.Name);
     }).Wait();
 }
Exemplo n.º 3
0
        public async Task <IViewComponentResult> InvokeAsync()
        {
            var nowPlaying = await MopidyProxy.GetNowPlaying();

            nowPlaying.State = string.IsNullOrWhiteSpace(nowPlaying.State)
                ? "Idle"
                : $"{nowPlaying.State.Substring(0, 1).ToUpperInvariant()}{nowPlaying.State.Substring(1)}";

            nowPlaying.Name = string.IsNullOrWhiteSpace(nowPlaying.Name)
                ? "Empty Play Queue"
                : nowPlaying.Name;

            return(View("Default", nowPlaying));
        }
        public void DoWork()
        {
            var client = new HttpClient();

            MopidyProxy.Logger                = _logger;
            MopidyProxy.Configuration         = _configuration;
            MopidyProxy.OnMopidyNotification +=
                async(object sender, MopidyNotificationEventArgs e) =>
            {
                await _hubContext.Clients.All.SendAsync("MopidyNotification", e.GetInfo());

                await System.Threading.Tasks.Task.Delay(5000);

                await _hubContext.Clients.All.SendAsync("MopidyNotification", e.GetInfo());
            };
            MopidyProxy.Start();
        }
Exemplo n.º 5
0
        public async Task <ActionResult> PostTogglePause()
        {
            var newPlayingState = await MopidyProxy.TogglePause();

            return(new JsonResult(new { Result = "ok", State = newPlayingState }));
        }
Exemplo n.º 6
0
        public async Task <ActionResult> PostPlay()
        {
            await MopidyProxy.Play();

            return(new JsonResult(new { Result = "ok" }));
        }
Exemplo n.º 7
0
        public async Task <ActionResult> PostClearQueue()
        {
            await MopidyProxy.ClearQueue();

            return(new JsonResult(new { Result = "ok" }));
        }
Exemplo n.º 8
0
 public async Task <ActionResult <IList <Episode> > > GetEpisodes()
 {
     return(new JsonResult(await MopidyProxy.GetEpisodes()));
 }