Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

The UPnP AV Framework supports the addition of custom actions to the services defined by the UPnP AV DCP.

Calling Custom Actions

To call a custom action from a control point, call InvokeVendorAction. As it does with predefined actions, the UPnP AV Framework packages the InvokeVendorActionparameters, sends them to the service using UPnP, and calls the InvokeVendorActionmethod on the appropriate device service class.

For more information, see UPnP AV DCP Documentation.

Custom Action Parameters

To support the passing of varying numbers of parameters in custom actions, the InvokeVendorActionmethod signature uses an instance of the COM DISPPARAMSstructure. DISPPARAMScan contain an arbitrary number of parameters.

For more information about using DISPPARAMSinstances, see Passing Parameters.

Virtual Services and the First Custom Action Parameters

The AVTransport and RenderingControl services can support multiple virtual services. At the UPnP network level, each service is identified by an instance ID that is passed to all actions. The UPnP AV Framework hides this detail and enables device implementers to handle virtual instances by creating instances of classes that derive from the top-level interface classes, like IAVTransport, and so do not require the use of instance IDs.

A control point that calls a custom action does not need to do anything with instance IDs. The UPnP AV Framework automatically adds the instance ID as the first parameter of the DISPPARAMSstructure before it sends the action invocation request to the device.

The UPnP AV Framework ensures that action invocations are routed to the appropriate device instance and does not require processing the instance ID. However, it does not remove the instance ID from the DISPPARAMSstructure. Therefore, device implementation code in virtual services should ignore the first parameter in the DISPPARAMSstructure.

See Also

Other Resources

Using the UPnP AV Framework

500 Internal Server Error

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at webmaster@systemmanager.forsenergy.ru to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.