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()); }
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); } }
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); } }