UPnP Device Description (Windows Embedded CE 6.0)

1/6/2010

The responses that the control point receives for the search request contain URLs that provide descriptions of the device's capabilities. To retrieve a description for an individual device, the control point issues an HTTP GET request to this URL.

When a device receives a request for device description information, it replies with an HTTP response that contains the device description in the message body. UPnP device description information consists of:

  • An XML document that contains several pieces of device-specific data.
  • Definitions of all nested devices.
  • A list of all services supported by the device, including state variables and actions.

The discovery message contains the URL for the device description document; similarly, the device description document contains URLs for service description documents, in instances of the SCPDURL element. A service description document contains information about the actions and state variables.

The following XML is a sample XML device description document. Both the C Device Host API and the COM Device Host API use device description documents like this one.

<?xml version="1.0"?>
<root xmlns="urn:schemas-upnp-org:device-1-0">
  <specVersion>
    <major>1</major>
    <minor>0</minor>
  </specVersion>

  <device>
    <deviceType>urn:schemas-upnp-org:device.lighting.2</deviceType>
    <friendlyName>Mark's UPnP Device Host Test</friendlyName>
    <manufacturer>Microsoft</manufacturer>
    <manufacturerURL>https://www.microsoft.com/</manufacturerURL>
    <modelDescription>Mark's UPnP-X10 Light and Dimmer control</modelDescription>
    <modelName>X-10L1</modelName>
    <modelNumber>L1</modelNumber>
    <modelURL>https://www.microsoft.com/</modelURL>
    <serialNumber>0000001</serialNumber>
    <UDN>DummyUDN</UDN>
    <UPC>00000-00001</UPC>

    <iconList>
      <icon>
        <mimetype>image/png</mimetype>
        <width>16</width>
        <height>16</height>
        <depth>2</depth>
        <url>icon.png</url>
      </icon>
    </iconList>
    <serviceList>
      <service>
        <serviceType>urn:schemas-upnp-org:service:pwrdim:2</serviceType>
        <serviceId>upnp:id:pwrdim</serviceId>
        <controlURL></controlURL>
        <eventSubURL></eventSubURL>
        <SCPDURL>SampleSCPD.xml</SCPDURL>
      </service>
    </serviceList>

    <presentationURL>sample.html</presentationURL>

  </device>
</root>

See Also

Concepts

UPnP Device and Control Point Architecture