UPnP 体系架构和基本原理 —— UPnP的描述文件

UPnP 体系架构和基本原理 —— UPnP的描述文件

UPnP的描述文件

UPnP设备描述

一个标准的UPnP设备描述模板(图中“red”字样为UPnP Forum定义;“purple”字样为UPnP设备制造商定义;“green”字样为UPnP Device Architecture定义)。

UPnP 体系架构和基本原理 —— UPnP的描述文件_第1张图片

一些主要标签介绍如下:

必需标签。之间包含根设备属性信息,根设备服务信息,根设备的嵌入式设备信息。其中根设备的服务信息在标签内,根设备内部的嵌入式设备的信息在标签内。

必需标签。UPnP设备的唯一标识符,由一个小于64个字符的字符串组成。

必需标签。UPnP设备类型,通常有UPnP Forum定义的标准设备和UPnP设备制造商定义的设备两种情况。UPnP Forum定义的标准设备模型为“urn:schemas-upnp-org:device:deviceType:ver”,而UPnP设备制造商定义的设备模型为“urn:domain-name:device:deviceType:ver”。其中“deviceType”为设备类型,“ver”为最高支持版本,“domain-name”为UPnP设备制造商的域名,不超过64个字符。

必需标签。用户可见的设备名,由UPnP厂商指定一个小于64个字符的字符串。

当该设备提供服务时必需。之间包含服务描述。有服务类型()、服务ID()、服务描述文件的URL()、服务控制的URL()和服务事件的URL()。

必需标签。服务类型,通常有UPnP Forum定义的标准服务和UPnP设备制造商定义的服务两种情况。UPnP Forum定义的标准服务模型为“urn:schemas-upnp-org:service:serviceType:ver”,而UPnP设备制造商定义的设备模型为“urn:domain-name:service:serviceType:ver”。其中serviceType”为服务类型,其余定义的意义与标签一致。

必需标签。服务ID,在其设备描述中必须唯一。通常有UPnP Forum定义的标准服务ID和UPnP设备制造商定义的服务ID两种情况。UPnP Forum定义的标准服务ID模型为“urn:schemas-upnp-org:service:serviceID”,而UPnP设备制造商定义的设备模型ID为“urn:domain-name:service:serviceID”。其中serviceID”一般与该服务的中的“serviceType”一致,其余定义的意义与标签一致。

必需标签。服务描述文件的URL,在其设备描述中必须唯一,获取该服务的描述文件时需要。

必需标签。服务控制的URL,在其设备描述中必须唯一,向该服务发出控制请求时需要。

必需标签。服务事件的URL,在其设备描述中必须唯一,对该服务进行事件订阅、续订、退订以及事件通知时需要。

UPnP服务描述

一个服务描述文件包含服务的动作、动作参数、状态变量表等信息。一个标准的UPnP服务描述模板见(图中“red”字样为UPnP Forum定义;“purple”字样为UPnP设备制造商定义;“green”字样为UPnP Device Architecture定义)。

UPnP 体系架构和基本原理 —— UPnP的描述文件_第2张图片

一些主要标签介绍如下:

当该服务提供动作时必需。服务的动作列表,包含该服务的所有动作描述信息,每个动作使用一个标签描述。

必需标签。动作描述,之间包含一个动作的描述。有动作名称(),与该动作相关的参数表()。

必需标签。动作的参数描述,之间包含一个该动作的相关参数描述信息。有参数名(),是输入参数还是输出参数(),如果需要返回时还包含返回值的描述(),以及与该参数对应的状态变量名(relatedStateVariable)。

当该服务存在状态变量时必需。该服务的状态变量表,之间包含所有的状态变量描述,每一个状态变量使用一个标签描述。

必需标签。状态变量,之间包含一个状态变量的描述信息。有状态变量名()、该状态变量的数据类型(),推荐包含该状态变量的默认值()、状态变量的可取值列表()、数值型状态变量的取值范围()。

你可能感兴趣的:(UPnP,DLNA,QPlay)