UPnP Design by Example: A Software Developer's Guide to Universal Plug and Play

In the last chapter you learned how to create a device description document for your device and how to implement support for this important capability. In this chapter you continue with a related description activity for your device: service descriptions. You will learn how UPnP service descriptions fit into the description model, walk through the creation of some simple service description documents for your device, and finally learn how to programmatically handle service action invocation on your device using the Intel SDK.
UPnP devices are only as useful as the capabilities they provide. A device that only provides a device description document is not terribly exciting or useful to control points.You need a mechanism by which to expose capabilities, interfaces, and properties of your device to control points.
Recall from Chapter 12 that UPnP uses two kinds of description documents. Device description documents describe the device and its static properties such as manufacturer, serial number, and other static information. However, that information isn t enough to actually communicate with or make use of the device. For this you need UPnP service descriptions.
UPnP service descriptions describe remote function calls on the device. These remote function calls are called actions. Actions are defined in the service description document, along with the action arguments and any associated state variables. Actions can be invoked by a UPnP control point. Actions can cause specific events to happen on the device, can return information back to the control point, or...