diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-07-26 17:02:23 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-07-26 17:02:23 -0400 |
| commit | 1bf9c446d93f5b9aae9a8f24439690beb0be3295 (patch) | |
| tree | 2388cd834286fe702c2162d72d8686ef86c591d8 /MediaBrowser.Server.Implementations | |
| parent | c08f8fd6fe68829141fa215678f8111c8f018f05 (diff) | |
update hdhomerun
Diffstat (limited to 'MediaBrowser.Server.Implementations')
| -rw-r--r-- | MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs | 98 | ||||
| -rw-r--r-- | MediaBrowser.Server.Implementations/Localization/Server/server.json | 5 |
2 files changed, 58 insertions, 45 deletions
diff --git a/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs b/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs index 5fd9745a1..64599bc58 100644 --- a/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs +++ b/MediaBrowser.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs @@ -151,65 +151,72 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings public async Task AddMetadata(ListingsProviderInfo info, List<ChannelInfo> channels, CancellationToken cancellationToken) { + if (string.IsNullOrWhiteSpace(info.ListingsId)) + { + throw new Exception("ListingsId required"); + } + var token = await GetToken(info, cancellationToken); + if (string.IsNullOrWhiteSpace(token)) + { + throw new Exception("token required"); + } + _channelPair.Clear(); - if (!String.IsNullOrWhiteSpace(token) && !String.IsNullOrWhiteSpace(info.ListingsId)) + var httpOptions = new HttpRequestOptions() { - var httpOptions = new HttpRequestOptions() - { - Url = ApiUrl + "/lineups/" + info.ListingsId, - UserAgent = UserAgent, - CancellationToken = cancellationToken - }; + Url = ApiUrl + "/lineups/" + info.ListingsId, + UserAgent = UserAgent, + CancellationToken = cancellationToken + }; - httpOptions.RequestHeaders["token"] = token; - - using (var response = await _httpClient.Get(httpOptions)) + httpOptions.RequestHeaders["token"] = token; + + using (var response = await _httpClient.Get(httpOptions)) + { + var root = _jsonSerializer.DeserializeFromStream<ScheduleDirect.Channel>(response); + _logger.Info("Found " + root.map.Count() + " channels on the lineup on ScheduleDirect"); + _logger.Info("Mapping Stations to Channel"); + foreach (ScheduleDirect.Map map in root.map) { - var root = _jsonSerializer.DeserializeFromStream<ScheduleDirect.Channel>(response); - _logger.Info("Found " + root.map.Count() + " channels on the lineup on ScheduleDirect"); - _logger.Info("Mapping Stations to Channel"); - foreach (ScheduleDirect.Map map in root.map) - { - var channel = (map.channel ?? (map.atscMajor + "." + map.atscMinor)).TrimStart('0'); - _logger.Debug("Found channel: " + channel + " in Schedules Direct"); - var schChannel = root.stations.FirstOrDefault(item => item.stationID == map.stationID); + var channel = (map.channel ?? (map.atscMajor + "." + map.atscMinor)).TrimStart('0'); + _logger.Debug("Found channel: " + channel + " in Schedules Direct"); + var schChannel = root.stations.FirstOrDefault(item => item.stationID == map.stationID); - if (!_channelPair.ContainsKey(channel) && channel != "0.0" && schChannel != null) - { - _channelPair.TryAdd(channel, schChannel); - } + if (!_channelPair.ContainsKey(channel) && channel != "0.0" && schChannel != null) + { + _channelPair.TryAdd(channel, schChannel); } - _logger.Info("Added " + _channelPair.Count() + " channels to the dictionary"); + } + _logger.Info("Added " + _channelPair.Count() + " channels to the dictionary"); - foreach (ChannelInfo channel in channels) + foreach (ChannelInfo channel in channels) + { + // Helper.logger.Info("Modifyin channel " + channel.Number); + if (_channelPair.ContainsKey(channel.Number)) { - // Helper.logger.Info("Modifyin channel " + channel.Number); - if (_channelPair.ContainsKey(channel.Number)) + string channelName; + if (_channelPair[channel.Number].logo != null) { - string channelName; - if (_channelPair[channel.Number].logo != null) - { - channel.ImageUrl = _channelPair[channel.Number].logo.URL; - channel.HasImage = true; - } - if (_channelPair[channel.Number].affiliate != null) - { - channelName = _channelPair[channel.Number].affiliate; - } - else - { - channelName = _channelPair[channel.Number].name; - } - channel.Name = channelName; + channel.ImageUrl = _channelPair[channel.Number].logo.URL; + channel.HasImage = true; + } + if (_channelPair[channel.Number].affiliate != null) + { + channelName = _channelPair[channel.Number].affiliate; } else { - _logger.Info("Schedules Direct doesnt have data for channel: " + channel.Number + " " + - channel.Name); + channelName = _channelPair[channel.Number].name; } + channel.Name = channelName; + } + else + { + _logger.Info("Schedules Direct doesnt have data for channel: " + channel.Number + " " + + channel.Name); } } } @@ -572,6 +579,11 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings var token = await GetToken(info, cancellationToken); + if (string.IsNullOrWhiteSpace(token)) + { + throw new Exception("token required"); + } + _logger.Info("Headends on account "); var options = new HttpRequestOptions() diff --git a/MediaBrowser.Server.Implementations/Localization/Server/server.json b/MediaBrowser.Server.Implementations/Localization/Server/server.json index e5a36b12f..e06bcea34 100644 --- a/MediaBrowser.Server.Implementations/Localization/Server/server.json +++ b/MediaBrowser.Server.Implementations/Localization/Server/server.json @@ -1459,7 +1459,7 @@ "ButtonUnlockGuide": "Unlock Guide", "LabelEnableFullScreen": "Enable fullscreen mode", "LabelEnableChromecastAc3Passthrough": "Enable Chromecast AC3 Passthrough", - "LabelSyncPath": "Synced content path:", + "OptionSyncToSDCard": "Synced to external SD card", "LabelEmail": "Email:", "LabelUsername": "Username:", "HeaderSignUp": "Sign Up", @@ -1491,5 +1491,6 @@ "LabelLineup": "Lineup:", "MessageTunerDeviceNotListed": "Is your tuner device not listed? Try installing an external service provider for more Live TV options.", "LabelImportOnlyFavoriteChannels": "Restrict to channels marked as favorite", - "ImportFavoriteChannelsHelp": "If enabled, only channels that are marked as favorite on the tuner device will be imported." + "ImportFavoriteChannelsHelp": "If enabled, only channels that are marked as favorite on the tuner device will be imported.", + "ButtonRepeat": "Repeat" } |
