PHONESTATUS

The PHONESTATUS structure describes the current status of a phone device.

typedef struct phonestatus_tag {
    DWORD  dwTotalSize;
    DWORD  dwNeededSize;
    DWORD  dwUsedSize;

    DWORD  dwStatusFlags;
    DWORD  dwNumOwners;
    DWORD  dwNumMonitors;
    DWORD  dwRingMode;
    DWORD  dwRingVolume;

    DWORD  dwHandsetHookSwitchMode;
    DWORD  dwHandsetVolume;
    DWORD  dwHandsetGain;

    DWORD  dwSpeakerHookSwitchMode;
    DWORD  dwSpeakerVolume;
    DWORD  dwSpeakerGain;

    DWORD  dwHeadsetHookSwitchMode;
    DWORD  dwHeadsetVolume;
    DWORD  dwHeadsetGain;

    DWORD  dwDisplaySize;
    DWORD  dwDisplayOffset;

    DWORD  dwLampModesSize;
    DWORD  dwLampModesOffset;

    DWORD  dwOwnerNameSize;
    DWORD  dwOwnerNameOffset;

    DWORD  dwDevSpecificSize;
    DWORD  dwDevSpecificOffset;
} PHONESTATUS, FAR *LPPHONESTATUS;
 

Members

dwTotalSize
The total size in bytes allocated to this data structure.
dwNeededSize
The size in bytes for this data structure that is needed to hold the returned information.
dwUsedSize
The size in bytes of the portion of this data structure that contains useful information.
dwStatusFlags
A collection of status flags for this phone device. This member uses the following PHONESTATUSFLAGS_ constants:
PHONESTATUSFLAGS_CONNECTED
Specifies whether the phone is currently connected to TAPI. If connected, TRUE; otherwise, FALSE.
PHONESTATUSFLAGS_SUSPENDED
Specify whether TAPI's manipulation of the phone device is suspended. If suspended, TRUE; otherwise, FALSE. An application's use of a phone device can be temporarily suspended when the switch wants to manipulate the phone in a way that cannot tolerate interference from the application.
dwRingMode
The current ring mode of a phone device.
dwRingVolume
The current ring volume of a phone device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum volume).
dwHandsetHookSwitchMode
The current hookswitch mode of the phone's handset. This member uses the following PHONEHOOKSWITCHMODE_ constants:
PHONEHOOKSWITCHMODE_ONHOOK
The device's microphone and speaker are both onhook.
PHONEHOOKSWITCHMODE_MIC
The devicers 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.
PHONEHOOKSWITCHMODE_UNKNOWN
The device's hookswitch state is unknown or cannot be detected.
dwHandsetVolume
The current speaker volume of the phone's handset device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum volume).
dwHandsetGain
The current microphone gain of the phone's handset device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum gain).
dwSpeakerHookSwitchMode
The current hookswitch mode of the phone's speakerphone. This member uses the following PHONEHOOKSWITCHMODE_ constants:
PHONEHOOKSWITCHMODE_ONHOOK
The device's microphone and speaker are both onhook.
PHONEHOOKSWITCHMODE_MIC
The devicer'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.
PHONEHOOKSWITCHMODE_UNKNOWN
The device's hookswitch state is unknown or cannot be detected.
dwSpeakerVolume
The current speaker volume of the phone's speaker device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum volume).
dwSpeakerGain
The current microphone gain of the phone's speaker device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum gain).
dwHeadsetHookSwitchMode
The current hookswitch mode of the phone's headset. This member uses the following PHONEHOOKSWITCHMODE_ constants:
PHONEHOOKSWITCHMODE_ONHOOK
The device's microphone and speaker are both onhook.
PHONEHOOKSWITCHMODE_MIC
The devicer'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.
PHONEHOOKSWITCHMODE_UNKNOWN
The device's hookswitch state is unknown or cannot be detected.
dwHeadsetVolume
The current speaker volume of the phone's headset device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum volume).
dwHeadsetGain
The current microphone gain of the phone's headset device. This is a value between 0x00000000 (silence) and 0x0000FFFF (maximum gain).
dwDisplaySize
dwDisplayOffset
The size in bytes and the offset in bytes from the beginning of this data structure of the variably sized field containing the phone's current display information.
dwLampModesSize
dwLampModesOffset
The size in bytes and the offset in bytes from the beginning of this data structure of the variably sized field containing the phone's current lamp modes.
dwOwnerNameSize
dwOwnerNameOffset
The size in bytes and the offset in bytes from the beginning of this data structure of the variably sized field containing the name of the application that is the current owner of the phone device. The name is the application name provided by the application when it invokes phoneInitialize. If no application name is supplied, the application's module name is used instead. If the phone currently has no owner, dwOwnerNameSize is zero.
dwDevSpecificSize
dwDevSpecificOffset
The size in bytes and the offset in bytes from the beginning of this data structure of the variably sized device-specific field.

Remarks

Device-specific extensions should use the DevSpecific (dwDevSpecificSize and dwDevSpecificOffset) variably sized area of this data structure.

See Also

PHONEHOOKSWITCHDEV_ Constants, PHONEHOOKSWITCHMODE_ Constants, PHONELAMPMODE_ Constants, PHONESTATE_ Constants, PHONESTATUSFLAGS_ Constants, TSPI_phoneGetStatus