phoneSetHookSwitch  EBDCYK 

The phoneSetHookSwitch function sets the hook state of the specified open phone's hookswitch devices to the specified mode. Only the hookswitch state of the hookswitch devices listed is affected.

LONG phoneSetHookSwitch(

    HPHONE hPhone,

 

    DWORD dwHookSwitchDevs,

 

    DWORD dwHookSwitchMode

 

   );

 

 

Parameters

hPhone

A handle to the open phone device. The application must be the owner of the phone.

dwHookSwitchDevs

The device or devices whose hookswitch mode is to be set. This parameter uses the following PHONEHOOKSWITCHDEV_ constants:

PHONEHOOKSWITCHDEV_HANDSET

The phone's handset.

PHONEHOOKSWITCHDEV_SPEAKER

The phone's speakerphone or adjunct.

PHONEHOOKSWITCHDEV_HEADSET

The phone's headset.

 

dwHookSwitchMode

The hookswitch mode to set. The dwHookSwitchMode parameter can have only a single bit set. This parameter uses the following PHONEHOOKSWITCHMODE_ constants:

PHONEHOOKSWITCHMODE_ONHOOK

The device's microphone and speaker are both onhook.

PHONEHOOKSWITCHMODE_MIC

The device's microphone is active, the speaker is mute.

PHONEHOOKSWITCHMODE_SPEAKER

The device's speaker is active, the microphone is mute.

PHONEHOOKSWITCHMODE_MICSPEAKER

The device's microphone and speaker are both active.

 

Return Values

Returns a positive request ID if the function will be completed asynchronously or a negative error number if an error has occurred. The dwParam2 parameter of the corresponding PHONE_REPLYFVXMHG message is zero if the function is successful or it is a negative error number if an error has occurred. Possible return values are:

PHONEERR_INVALPHONEHANDLE, PHONEERR_OPERATIONUNAVAIL, PHONEERR_NOTOWNER, PHONEERR_NOMEM, PHONEERR_INVALHOOKSWITCHDEV, PHONEERR_RESOURCEUNAVAIL, PHONEERR_INVALHOOKSWITCHMODE, PHONEERR_OPERATIONFAILED, PHONEERR_INVALPHONESTATE, PHONEERR_UNINITIALIZED.

Remarks

The hookswitch mode is the same for all devices specified. If different settings are desired, this function can be invoked multiple times with a different set of parameters. A PHONE_STATE message is sent to the application after the hookswitch state has changed.

See Also

PHONE_REPLY, PHONE_STATE