2.2.2.1 Dispatcher Request Tag Payload
The Dispatcher Request tag payload precedes all DSLR remote service request tags and payloads. (DSLR service requests are children of the Dispatcher Request tag.) It includes all information relevant to calling a remote function on a specific service: the type of request that is being made (either a one-way event or two-way request), the service on which the request is being made, the service-defined function to be called on the remote service, and a one-time unique request handle to identify the specific request.
The format for the Dispatcher Request tag payload is as follows:
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CallingConvention |
|||||||||||||||||||||||||||||||
RequestHandle |
|||||||||||||||||||||||||||||||
ServiceHandle |
|||||||||||||||||||||||||||||||
FunctionHandle |
CallingConvention (4 bytes): An unsigned 32-bit integer that indicates the type of request (either a two-way request or a one-way event). This field MUST be set to one of the following values. (Note that for the dispenser service calls, CreateService and DeleteService, this value MUST be dslrRequest. See sections 2.2.2.3 and 2.2.2.4 for more details about CreateService and DeleteService.)
-
Value
Meaning
dslrRequest
0x00000001
DSLR Two-Way Request
dslrOneWay
0x00000003
DSLR One-Way Event
RequestHandle (4 bytes): An unsigned 32-bit integer. A client allocated handle to uniquely identify this specific request.
ServiceHandle (4 bytes): An unsigned 32-bit integer. The service handle that uniquely identifies the service on which the request is being made. This service handle is allocated by the client as part of the CreateService request. (Note that for the dispenser service calls, CreateService, and DeleteService, this value MUST be 0x00000000, which is the service handle for the dispenser service.
-
Value
Meaning
DispenserHandle
0x00000000
Dispenser service handle. Used only for CreateService and DeleteService messages exposed by the DSLR dispenser service.
GenericServiceHandle
0x00000001 — 0xFFFFFFFF
Generic DSLR service handle, generated by the DSLR client during the CreateService message for a given service.
FunctionHandle (4 bytes): An unsigned 32-bit integer. Function handle for the specific function being called on the remote service. This function handle is defined and exposed by the remote service that corresponds to the specified ServiceHandle. (Note that for the dispenser service calls, CreateService and DeleteService, these values MUST be 0x00000001 and 0x00000002 respectively.
-
Value
Meaning
CreateService
0x00000001
Create remote service. Used by the DSLR dispenser service.
DeleteService
0x00000002
Delete remote service. Used by the DSLR dispenser service.
GenericFunctionHandle
0x0000000 — 0xFFFFFFFF
Function handle for the specific function, defined and exposed by the DSLR service that corresponds to the specified ServiceHandle.