Example #1
0
        public List <int> GetSectionKeys(PlexServerSettings settings)
        {
            _logger.Trace("Getting sections from Plex host: {0}", settings.Host);
            var url            = String.Format("http://{0}:{1}/library/sections", settings.Host, settings.Port);
            var xmlStream      = _httpProvider.DownloadStream(url, null);
            var xDoc           = XDocument.Load(xmlStream);
            var mediaContainer = xDoc.Descendants("MediaContainer").FirstOrDefault();
            var directories    = mediaContainer.Descendants("Directory").Where(x => x.Attribute("type").Value == "show");

            return(directories.Select(d => Int32.Parse(d.Attribute("key").Value)).ToList());
        }
Example #2
0
        public override string DownloadNzb(RemoteEpisode remoteEpisode)
        {
            var url   = remoteEpisode.Release.DownloadUrl;
            var title = remoteEpisode.Release.Title + ".nzb";

            string category = Settings.TvCategory;
            int    priority = remoteEpisode.IsRecentEpisode() ? Settings.RecentTvPriority : Settings.OlderTvPriority;

            _logger.Info("Adding report [{0}] to the queue.", title);

            using (var nzb = _httpProvider.DownloadStream(url))
            {
                _logger.Info("Adding report [{0}] to the queue.", title);
                var response = _proxy.DownloadNzb(nzb, title, category, priority, Settings);

                return(response);
            }
        }
Example #3
0
        public override string DownloadNzb(RemoteEpisode remoteEpisode)
        {
            var url      = remoteEpisode.Release.DownloadUrl;
            var title    = remoteEpisode.Release.Title;
            var category = Settings.TvCategory;
            var priority = remoteEpisode.IsRecentEpisode() ? Settings.RecentTvPriority : Settings.OlderTvPriority;

            using (var nzb = _httpProvider.DownloadStream(url))
            {
                _logger.Info("Adding report [{0}] to the queue.", title);
                var response = _proxy.DownloadNzb(nzb, title, category, priority, Settings);

                if (response != null && response.Ids.Any())
                {
                    return(response.Ids.First());
                }

                return(null);
            }
        }