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;
DWORD dwPhoneFeatures;
} 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 all the returned information.
-
dwUsedSize
-
The size in bytes of the portion of this data structure that contains useful information.
-
dwStatusFlags
-
Provides a set 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
-
Specifies whether TAPI's manipulation of the phone device is suspended. If suspended, TRUE; otherwise, FALSE. An application's use of a phone device may be temporarily suspended when the switch wants to manipulate the phone in a way that cannot tolerate interference from the application.
-
dwNumOwners
-
The number of application modules with owner privilege for the phone.
-
dwNumMonitors
-
The number of application modules with monitor privilege for the phone.
-
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 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.
-
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 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.
-
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 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.
-
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 of the variably sized field containing the phone's current display information, and the offset in bytes, from the beginning of this data structure.
-
dwLampModesSize
-
dwLampModesOffset
-
The size in bytes of the variably sized field containing the phone's current lamp modes, and the offset in bytes from the beginning of this data structure.
-
dwOwnerNameSize
-
dwOwnerNameOffset
-
The size in bytes of the variably sized field containing the name of the application that is the current owner of the phone device, and the offset in bytes from the beginning of this data structure. The name is the application name provided by the application when it invoked with phoneInitialize or phoneInitializeEx. If no application name was supplied, the application's filename is used instead. If the phone currently has no owner, dwOwnerNameSize is zero.
-
dwDevSpecificSize
-
dwDevSpecificOffset
-
The size in bytes of the variably sized device-specific field, and the offset in bytes from the beginning of this data structure.
-
dwPhoneFeatures
-
These flags indicate which Telephony API functions can be invoked on the phone, considering the availability of the feature in the device capabilities, the current device state, and device ownership of the invoking application. A zero indicates the corresponding feature cannot be invoked by the application on the phone in its current state; a one indicates the feature can be invoked. This member uses PHONEFEATURE_ constants.
Remarks
Device-specific extensions should use the DevSpecific (dwDevSpecificSize and dwDevSpecificOffset) variably sized area of this data structure.
The dwPhoneFeatures member is available only to applications that open the phone device with an API version of 2.0 or later.
QuickInfo
Version: Use TAPI version 1.4 and later.
Header: Declared in tapi.h.
See Also
phoneInitialize, phoneInitializeEx