运行以下脚本
Dim deviceFinder Set deviceFinder = CreateObject("UPnP.UPnPDeviceFinder") Dim devices Set devices = deviceFinder.FindByType("ssdp:all", 0) For Each device In devices WScript.Echo device.FriendlyName + " " + device.Type Next
可以得到类似下面的结果
[TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1 [TV] Samsung 6 Series (55) urn:samsung.com:device:RemoteControlReceiver:1 [TV] Samsung 6 Series (55) urn:samsung.com:device:RemoteControlReceiver:1 [TV] Samsung 6 Series (55) urn:dial-multiscreen-org:device:dialreceiver:1 [TV] Samsung 6 Series (55) urn:dial-multiscreen-org:device:dialreceiver:1 [TV] Samsung 6 Series (55) urn:samsung.com:device:RemoteControlReceiver:1 [TV] Samsung 6 Series (55) urn:dial-multiscreen-org:device:dialreceiver:1 [TV] Samsung 6 Series (55) urn:samsung.com:device:RemoteControlReceiver:1 [TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1 [TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1 [TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1 [TV] Samsung 6 Series (55) urn:dial-multiscreen-org:device:dialreceiver:1 [TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1 [TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1 [TV] Samsung 6 Series (55) urn:schemas-upnp-org:device:MediaRenderer:1
其中有三种协议,分别是UPnP、DIAL和urn:samsung.com。UPnP是一个通用的智能设备通信协议,DIAL和urn:samsung.com都属于UPnP协议。urn:samsung.com是三星的协议,不作更多讨论。DIAL是一个通用的多屏互动协议,手机视频投送到电视上一般使用的是这个协议。关于DIAL的介绍可以在http://www.dial-multiscreen.org/找到。
注意到上面重复了四次"[TV] Samsung 6 Series (55) urn:dial-multiscreen-org:device:dialreceiver:1",这并不是四个设备,而是同一个设备实现了DIAL的四个版本,分别是1.7、2.0、2.1和2.2。关于协议的描述可以在http://www.dial-multiscreen.org/dial-protocol-specification找到。