public async Task <ActionResult> GetMediaReceiverRegistrar([FromRoute, Required] string serverId) { return((DlnaServerManager.Instance?.MediaReceiverRegistrar != null && string.Equals(serverId, DlnaServerManager.Instance?.ServerString, StringComparison.Ordinal)) ? Ok(await DlnaServerManager.Instance !.MediaReceiverRegistrar.GetServiceXml(Request, Response).ConfigureAwait(false)) : NotFound()); }
public async Task <ActionResult <ControlResponse> > ProcessMediaReceiverRegistrarControlRequest([FromRoute, Required] string serverId) { return((DlnaServerManager.Instance?.MediaReceiverRegistrar != null && string.Equals(serverId, DlnaServerManager.Instance?.ServerString, StringComparison.Ordinal)) ? await DlnaServerManager.Instance !.MediaReceiverRegistrar.ProcessControlRequestAsync(Request).ConfigureAwait(false) : NotFound()); }
private async Task loadServicesAsync() { ServiceTypes serviceType; foreach (Service service in deviceDescription.Device.Services) { switch (service.ServiceType) { case ServiceTypesString.AVTRANSPORT: AVTransport = await XmlExtension.DeserializeUriAsync <AVTransport>(new Uri(HtmlExtension.CompleteHttpString(ipAddress, port, service.SCPDURL))); AVTransport.SetParent(); serviceType = ServiceTypes.AVTRANSPORT; break; case ServiceTypesString.CONNECTIONMANAGER: ConnectionManager = await XmlExtension.DeserializeUriAsync <ConnectionManager>(new Uri(HtmlExtension.CompleteHttpString(ipAddress, port, service.SCPDURL))); ConnectionManager.SetParent(); serviceType = ServiceTypes.CONNECTIONMANAGER; break; case ServiceTypesString.CONTENTDIRECTORY: ContentDirectory = await XmlExtension.DeserializeUriAsync <ContentDirectory>(new Uri(HtmlExtension.CompleteHttpString(ipAddress, port, service.SCPDURL))); ContentDirectory.SetParent(); serviceType = ServiceTypes.CONTENTDIRECTORY; break; case ServiceTypesString.MEDIARECEIVERREGISTRAR: MediaReceiverRegistrar = await XmlExtension.DeserializeUriAsync <MediaReceiverRegistrar>(new Uri(HtmlExtension.CompleteHttpString(ipAddress, port, service.SCPDURL))); MediaReceiverRegistrar.SetParent(); serviceType = ServiceTypes.MEDIARECEIVERREGISTRAR; break; case ServiceTypesString.RENDERINGCONTROL: RenderingControl = await XmlExtension.DeserializeUriAsync <RenderingControl>(new Uri(HtmlExtension.CompleteHttpString(ipAddress, port, service.SCPDURL))); RenderingControl.SetParent(); serviceType = ServiceTypes.RENDERINGCONTROL; break; default: serviceType = ServiceTypes.NEUTRAL; break; } if (serviceType != ServiceTypes.NEUTRAL) { serviceSCPDs.Add(new NetWorkSubscriberPayload { MediaDevice = this, URI = HtmlExtension.CompleteHttpString(ipAddress, port, service.SCPDURL), ServiceType = serviceType, }); serviceControls.Add(new NetWorkSubscriberPayload { MediaDevice = this, URI = HtmlExtension.CompleteHttpString(ipAddress, port, service.ControlURL), ServiceType = serviceType, }); serviceEvents.Add(new NetWorkSubscriberPayload { MediaDevice = this, URI = HtmlExtension.CompleteHttpString(ipAddress, port, service.EventSubURL), ServiceType = serviceType, }); } } }