update tv
This commit is contained in:
parent
4f6fb1a76e
commit
1e9292c454
|
@ -440,6 +440,9 @@ namespace MediaBrowser.Api.LiveTv
|
||||||
[ApiMember(Name = "Id", Description = "Provider id", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
|
[ApiMember(Name = "Id", Description = "Provider id", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
|
||||||
public string Id { get; set; }
|
public string Id { get; set; }
|
||||||
|
|
||||||
|
[ApiMember(Name = "Type", Description = "Provider Type", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
|
||||||
|
public string Type { get; set; }
|
||||||
|
|
||||||
[ApiMember(Name = "Location", Description = "Location", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
|
[ApiMember(Name = "Location", Description = "Location", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
|
||||||
public string Location { get; set; }
|
public string Location { get; set; }
|
||||||
|
|
||||||
|
@ -535,7 +538,7 @@ namespace MediaBrowser.Api.LiveTv
|
||||||
|
|
||||||
public async Task<object> Get(GetLineups request)
|
public async Task<object> Get(GetLineups request)
|
||||||
{
|
{
|
||||||
var info = await _liveTvManager.GetLineups(request.Id, request.Country, request.Location).ConfigureAwait(false);
|
var info = await _liveTvManager.GetLineups(request.Type, request.Id, request.Country, request.Location).ConfigureAwait(false);
|
||||||
|
|
||||||
return ToOptimizedSerializedResultUsingCache(info);
|
return ToOptimizedSerializedResultUsingCache(info);
|
||||||
}
|
}
|
||||||
|
|
|
@ -357,10 +357,11 @@ namespace MediaBrowser.Controller.LiveTv
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the lineups.
|
/// Gets the lineups.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
/// <param name="providerType">Type of the provider.</param>
|
||||||
/// <param name="providerId">The provider identifier.</param>
|
/// <param name="providerId">The provider identifier.</param>
|
||||||
/// <param name="country">The country.</param>
|
/// <param name="country">The country.</param>
|
||||||
/// <param name="location">The location.</param>
|
/// <param name="location">The location.</param>
|
||||||
/// <returns>Task<List<NameIdPair>>.</returns>
|
/// <returns>Task<List<NameIdPair>>.</returns>
|
||||||
Task<List<NameIdPair>> GetLineups(string providerId, string country, string location);
|
Task<List<NameIdPair>> GetLineups(string providerType, string providerId, string country, string location);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,7 +48,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings.Emby
|
||||||
|
|
||||||
public Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location)
|
public Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location)
|
||||||
{
|
{
|
||||||
return GetListingsProvider(country).GetLineups(info, country, location);
|
return GetListingsProvider(country).GetLineups(country, location);
|
||||||
}
|
}
|
||||||
|
|
||||||
private IEmbyListingProvider GetListingsProvider(string country)
|
private IEmbyListingProvider GetListingsProvider(string country)
|
||||||
|
|
|
@ -43,7 +43,7 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings.Emby
|
||||||
return Task.FromResult(true);
|
return Task.FromResult(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location)
|
public async Task<List<NameIdPair>> GetLineups(string country, string location)
|
||||||
{
|
{
|
||||||
// location = postal code
|
// location = postal code
|
||||||
var path = await GetResponse<String>("https://data.emby.media/service/lineups?postalCode=" + location).ConfigureAwait(false);
|
var path = await GetResponse<String>("https://data.emby.media/service/lineups?postalCode=" + location).ConfigureAwait(false);
|
||||||
|
|
|
@ -13,6 +13,6 @@ namespace MediaBrowser.Server.Implementations.LiveTv.Listings.Emby
|
||||||
Task<IEnumerable<ProgramInfo>> GetProgramsAsync(ListingsProviderInfo info, string channelNumber, DateTime startDateUtc, DateTime endDateUtc, CancellationToken cancellationToken);
|
Task<IEnumerable<ProgramInfo>> GetProgramsAsync(ListingsProviderInfo info, string channelNumber, DateTime startDateUtc, DateTime endDateUtc, CancellationToken cancellationToken);
|
||||||
Task AddMetadata(ListingsProviderInfo info, List<ChannelInfo> channels, CancellationToken cancellationToken);
|
Task AddMetadata(ListingsProviderInfo info, List<ChannelInfo> channels, CancellationToken cancellationToken);
|
||||||
Task Validate(ListingsProviderInfo info, bool validateLogin, bool validateListings);
|
Task Validate(ListingsProviderInfo info, bool validateLogin, bool validateListings);
|
||||||
Task<List<NameIdPair>> GetLineups(ListingsProviderInfo info, string country, string location);
|
Task<List<NameIdPair>> GetLineups(string country, string location);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2272,20 +2272,34 @@ namespace MediaBrowser.Server.Implementations.LiveTv
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task<List<NameIdPair>> GetLineups(string providerId, string country, string location)
|
public Task<List<NameIdPair>> GetLineups(string providerType, string providerId, string country, string location)
|
||||||
{
|
{
|
||||||
var config = GetConfiguration();
|
var config = GetConfiguration();
|
||||||
|
|
||||||
var info = config.ListingProviders.FirstOrDefault(i => string.Equals(i.Id, providerId, StringComparison.OrdinalIgnoreCase));
|
if (string.IsNullOrWhiteSpace(providerId))
|
||||||
|
|
||||||
var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase));
|
|
||||||
|
|
||||||
if (provider == null)
|
|
||||||
{
|
{
|
||||||
throw new ResourceNotFoundException();
|
var provider = _listingProviders.FirstOrDefault(i => string.Equals(providerType, i.Type, StringComparison.OrdinalIgnoreCase));
|
||||||
}
|
|
||||||
|
|
||||||
return provider.GetLineups(info, country, location);
|
if (provider == null)
|
||||||
|
{
|
||||||
|
throw new ResourceNotFoundException();
|
||||||
|
}
|
||||||
|
|
||||||
|
return provider.GetLineups(null, country, location);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var info = config.ListingProviders.FirstOrDefault(i => string.Equals(i.Id, providerId, StringComparison.OrdinalIgnoreCase));
|
||||||
|
|
||||||
|
var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase));
|
||||||
|
|
||||||
|
if (provider == null)
|
||||||
|
{
|
||||||
|
throw new ResourceNotFoundException();
|
||||||
|
}
|
||||||
|
|
||||||
|
return provider.GetLineups(info, country, location);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user