diff options
Diffstat (limited to 'MediaBrowser.Api/SessionsService.cs')
| -rw-r--r-- | MediaBrowser.Api/SessionsService.cs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/MediaBrowser.Api/SessionsService.cs b/MediaBrowser.Api/SessionsService.cs index 8d5e9e0d7..5433ecc2e 100644 --- a/MediaBrowser.Api/SessionsService.cs +++ b/MediaBrowser.Api/SessionsService.cs @@ -194,6 +194,21 @@ namespace MediaBrowser.Api public Guid UserId { get; set; } } + [Route("/Sessions/{Id}/Capabilities", "POST")] + [Api(("Updates capabilities for a device"))] + public class PostCapabilities : IReturnVoid + { + /// <summary> + /// Gets or sets the id. + /// </summary> + /// <value>The id.</value> + [ApiMember(Name = "Id", Description = "Session Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "POST")] + public Guid Id { get; set; } + + [ApiMember(Name = "PlayableMediaTypes", Description = "A list of playable media types, comma delimited.", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "POST")] + public string PlayableMediaTypes { get; set; } + } + /// <summary> /// Class SessionsService /// </summary> @@ -335,5 +350,14 @@ namespace MediaBrowser.Api { _sessionManager.RemoveAdditionalUser(request.Id, request.UserId); } + + public void Post(PostCapabilities request) + { + var session = _sessionManager.Sessions.First(i => i.Id == request.Id); + + session.PlayableMediaTypes = request.PlayableMediaTypes + .Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries) + .ToList(); + } } } |
