3.1.7.10 TSPI_phoneGetLamp

Syntax

LONG TSPI_phoneGetLamp(dwRequestID, hdPhone, dwButtonLampID, lpdwLampMode)
This function returns the current lamp mode of the specified lamp.

Parameters

DRV_REQUESTID dwRequestID

Specifies the identifier of the asynchronous request. The Service Provider returns this value if the function completes asynchronously.

HDRVPHONE hdPhone
Specifies the Service Provider's opaque handle to the phone whose lamp mode is to be retrieved.

DWORD dwButtonLampID
Specifies the ID of the lamp to be queried.

LPDWORD lpdwLampMode
Specifies a far pointer to a memory location that will hold the lamp mode status of the given lamp, of type PHONELAMPMODE. Values are:

PHONELAMPMODE_BROKENFLUTTER
Broken flutter is the superposition of flash and flutter.

PHONELAMPMODE_FLASH
Flash means slow on and off.

PHONELAMPMODE_FLUTTER
Flutter means fast on and off.

PHONELAMPMODE_OFF
The lamp is off.

PHONELAMPMODE_STEADY
The lamp is continuously lit.

PHONELAMPMODE_WINK
The lamp is winking.

PHONELAMPMODE_UNKNOWN
The lamp mode is currently unknown.

Return Value

Returns zero if the function is successful, the (positive) dwRequestID value if the function will be completed asynchronously, or a negative error number if an error has occurred. Possible error returns are:

PHONEERR_INVALPHONEHANDLE
The specified device handle is invalid.

PHONEERR_INVALBUTTONLAMPID
The specified Button ID is out of range.

PHONEERR_INVALPOINTER
The specified pointer parameter is invalid.

PHONEERR_INVALPHONESTATE
The phone device is not in a valid state for the requested operation.

PHONEERR_OPERATIONUNAVAIL
The specified operation is not available.

PHONEERR_OPERATIONFAILED
The specified operation failed for unspecified reasons.

Comments

Phone sets that have multiple lamps per button, should be modeled using multiple button/lamps pairs. Each extra button/lamp pair should use a DUMMY button.

See Also

Functions: TSPI_phoneGetDevCaps, TSPI_phoneSetLamp
Data Types: PHONECAPS, PHONELAMPMODE