Previous Topic

Next Topic

Book Contents

Book Index

UPnP Device Service

Provides information about the implementation of OSGi UPnP Device Service specification.

Overview

When a UPnP-enabled device is plugged in the network, the UPnP Driver Bundle listens on the standard multicast address for notifications about the plugin of new devices.

When such notification is received, the bundle retrieves the main attributes of the device – its embedded devices and services, as well as its device type and UDN.

Then, the bundle registers the device as an org.osgi.service.upnp.UPnPDevice service in the OSGi framework. Other bundles running on the framework can contact the OSGi service representing the newly registered device and use device's UPnP services without the need to perform sophisticated parsing and protocol-dependent operations.

If a UPnP device contains one or more embedded devices, the UPnP Driver Bundle registers them as UPnPDevice services as well.

The presence of the UPnPDevice.DEVICE_CATEGORY with value "UPnP" and the lack of the UPnPDevice.UPNP_EXPORT service properties indicate that a UPnPDevice service is for an imported UPnP device.

UPnPDevice.DEVICE_CATEGORY is not available for internal devices to avoid representing such devices as manageable over the UPnP protocol.

In addition, for each external UPnPDevice service, the driver adds the properties com.prosyst.mbs.services.upnp.UPnPConstants.DEVICE_IP and com.prosyst.mbs.services.upnp.UPnPConstants.DEVICE_PORT, showing respectively the IP address and the port of the associated device.

Refer to UPnP Developer Guide for details.

Registering Bundle

The service is registered by: OSGi UPnP Bundle. For more details refer to the System and Configuration properties of the bundle.