2.2.4.1.7.10 TUISPIDLLCallback

The client uses the TUISPIDLLCallback packet to send or receive opaque data between the TSP on the server and the corresponding TSP user interface DLL on the client. The client obtains the user interface DLL earlier by sending the GetUIDllName packet to begin the operation of installing, configuring, or removing the TSP.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Req_Func

Reserved1

dwObjectID

dwObjectType

dwParamsInOffset

dwParamsInSize

dwParamsOutOffset

dwParamsOutSize

Reserved2

Reserved3

Reserved4

Reserved5

Reserved6

Reserved7

Reserved8

VARDATA (variable)

...

Req_Func (4 bytes): Identifier of the function that will be invoked on the remote server. This value MUST be set to 2.

On completion of the ClientRequest method, this field MUST contain the result of the encapsulated telephony request. A value of 0 indicates success, and a LINEERR_Constants value indicates failure. The remote server MUST complete this call synchronously.

Reserved1 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

dwObjectID (4 bytes): The dwObjectType field in this packet determines the interpretation of this field, as follows:

  • TUISPIDLL_OBJECT_LINEID: dwObjectID is a line device identifier.

  • TUISPIDLL_OBJECT_PHONEID: dwObjectID is a phone device identifier.

  • TUISPIDLL_OBJECT_PROVIDERID: dwObjectID is a permanent provider identifier. The dwObjectID field in this case MUST be filled up by the server when the client wants to install the TSP; otherwise, this identifies the TSP being configured or removed.

  • TUISPIDLL_OBJECT_DIALOGINSTANCE: dwObjectID is an opaque handle that was provided by the server to the client as part of corresponding GetUIDllName packet. This opaque handle value cannot be used after it is used in a FreeDialogInstance packet.

dwObjectType (4 bytes): One of the TUISPIDLL_OBJECT_Constants.

dwParamsInOffset (4 bytes): The offset in the VARDATA field to opaque data that the client is sending to the TSP on the server. This opaque data is not interpreted by the protocol.

dwParamsInSize (4 bytes): The size of the opaque data in the VARDATA field that the client is sending to the TSP on the server.

dwParamsOutOffset (4 bytes): On successful completion of the request, the server MUST set this field to the offset in the VARDATA field to the opaque data that the TSP is sending to the client. This opaque data is not interpreted by the protocol.

dwParamsOutSize (4 bytes): A 32-bit integer. The client MUST set this field to the size of the data that it can receive from the server (for example, the size of the packet allocated on the client). On successful completion of the request, the server MUST set this field to the size of the data being returned in the VARDATA field at dwParamsOutOffset.

Reserved2 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

Reserved3 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

Reserved4 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

Reserved5 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

Reserved6 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

Reserved7 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

Reserved8 (4 bytes): An unsigned 32-bit integer. This MUST be 0x00000000 and ignored on receipt.

VARDATA (variable): Opaque data that the TSP is sending to the client.