Use request body for mapping xml channels

This commit is contained in:
crobibero 2020-12-13 08:32:33 -07:00
parent 8c00fbea9c
commit c6b381db10
2 changed files with 31 additions and 8 deletions

View File

@ -1119,20 +1119,15 @@ namespace Jellyfin.Api.Controllers
/// <summary>
/// Set channel mappings.
/// </summary>
/// <param name="providerId">Provider id.</param>
/// <param name="tunerChannelId">Tuner channel id.</param>
/// <param name="providerChannelId">Provider channel id.</param>
/// <param name="setChannelMappingDto">The set channel mapping dto.</param>
/// <response code="200">Created channel mapping returned.</response>
/// <returns>An <see cref="OkResult"/> containing the created channel mapping.</returns>
[HttpPost("ChannelMappings")]
[Authorize(Policy = Policies.DefaultAuthorization)]
[ProducesResponseType(StatusCodes.Status200OK)]
public async Task<ActionResult<TunerChannelMapping>> SetChannelMapping(
[FromQuery] string? providerId,
[FromQuery] string? tunerChannelId,
[FromQuery] string? providerChannelId)
public async Task<ActionResult<TunerChannelMapping>> SetChannelMapping([FromBody, Required] SetChannelMappingDto setChannelMappingDto)
{
return await _liveTvManager.SetChannelMapping(providerId, tunerChannelId, providerChannelId).ConfigureAwait(false);
return await _liveTvManager.SetChannelMapping(setChannelMappingDto.ProviderId, setChannelMappingDto.TunerChannelId, setChannelMappingDto.ProviderChannelId).ConfigureAwait(false);
}
/// <summary>

View File

@ -0,0 +1,28 @@
using System.ComponentModel.DataAnnotations;
namespace Jellyfin.Api.Models.LiveTvDtos
{
/// <summary>
/// Set channel mapping dto.
/// </summary>
public class SetChannelMappingDto
{
/// <summary>
/// Gets or sets the provider id.
/// </summary>
[Required]
public string ProviderId { get; set; } = string.Empty;
/// <summary>
/// Gets or sets the tuner channel id.
/// </summary>
[Required]
public string TunerChannelId { get; set; } = string.Empty;
/// <summary>
/// Gets or sets the provider channel id.
/// </summary>
[Required]
public string ProviderChannelId { get; set; } = string.Empty;
}
}