2.2.4.1.3.21 GetAddressStatus

The GetAddressStatus packet is transmitted from a TAPI client to a TAPI server in a remote procedure call. Sending this packet queries the specified address for its current status.


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

hLine

dwAddressID

lpAddressStatus

Reserved2

Reserved3

Reserved4

Reserved5

Reserved6

Reserved7

Reserved8

Reserved9

Reserved10

Reserved11

VarData (64 bytes, optional)

...

...

Req_Func (4 bytes): An unsigned 32-bit integer. The identifier of the function that will be invoked on the remote server. This value MUST be set to 23.

Return Values

On completion of ClientRequest, this field will 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.

MUST return zero if the function succeeds or an error number if an error occurs. Common return values are as follows:

Name

Value

LINEERR_INVALLINEHANDLE

0x8000002B

LINEERR_OPERATIONUNAVAIL

0x80000049

LINEERR_INVALADDRESSID

0x80000011

LINEERR_OPERATIONFAILED

0x80000048

LINEERR_NOMEM

0x80000044

LINEERR_RESOURCEUNAVAIL

0x8000004B

Reserved1 (4 bytes): An unsigned 32-bit integer. MUST be set to zero when sent and MUST be ignored on receipt.

hLine (4 bytes): An HLINE. The handle to the opened line device that contains the address to query. This field MUST have been obtained by sending the Open packet.

dwAddressID (4 bytes): An unsigned 32-bit integer. An address on the particular open line device. This is the address to be queried. An address identifier is permanently associated with an address; the identifier remains constant across operating system upgrades. A valid value of dwAddressID is in the range 0 to dwNumAddresses –1. The client obtains dwNumAddresses from the LINEDEVCAPS obtained by sending a GetDevCaps packet to the remote server.  This parameter is not validated by TAPI when this function is called.

lpAddressStatus (4 bytes): An unsigned 32-bit integer. The size of a LINEADDRESSSTATUS packet that, upon successful completion of the request, contains the current status of an address. Upon successful completion, this field contains the offset, in bytes, of the packet in the VarData field.

Reserved2 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved3 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved4 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved5 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved6 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved7 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved8 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved9 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved10 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

Reserved11 (4 bytes): An unsigned 32-bit integer. This field is used for padding and MUST be ignored on receipt. It can be any value.

VarData (64 bytes): This field is only present on successful completion of the request. Contains a LINEADDRESSSTATUS packet.

The contents of this field MUST be DWORD-aligned, as specified in [MS-DTYP] section 2.2.9.