typedef struct phonecaps_tag {
DWORD dwTotalSize;
DWORD dwNeededSize;
DWORD dwUsedSize;
DWORD dwAPIVersion;
DWORD dwExtVersion;
DWORD dwExtensionID0;
DWORD dwExtensionID1;
DWORD dwExtensionID2;
DWORD dwExtensionID3;
DWORD dwProviderInfoSize;
DWORD dwProviderInfoOffset;
DWORD dwPhoneInfoSize;
DWORD dwPhoneInfoOffset;
DWORD dwPermanentPhoneID;
DWORD dwPhoneNameSize;
DWORD dwPhoneNameOffset;
DWORD dwStringFormat;
DWORD dwPhoneStates;
DWORD dwHookSwitchDevs;
DWORD dwHandsetHookSwitchModes;
DWORD dwSpeakerHookSwitchModes;
DWORD dwHeadsetHookSwitchModes;
DWORD dwVolumeFlags;
DWORD dwGainFlags;
DWORD dwDisplayNumRows;
DWORD dwDisplayNumColumns;
DWORD dwNumRingModes;
DWORD dwNumButtonLamps;
DWORD dwButtonModesSize;
DWORD dwButtonModesOffset;
DWORD dwButtonFunctionsSize;
DWORD dwButtonFunctionsOffset;
DWORD dwLampModesSize;
DWORD dwLampModesOffset;
DWORD dwNumSetData;
DWORD dwSetDataSize;
DWORD dwSetDataOffset;
DWORD dwNumGetData
DWORD dwGetDataSize;
DWORD dwGetDataOffset;
} PHONECAPS, FAR *LPPHONECAPS;
Fields | The PHONECAPS structure contains the following fields: | |
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 this data structure that contains useful information. | ||
dwAPIVersion Specifies the API version number under which the Telephony API and the service provider for the line device will be operating. The high-order word is the major version number and the low-order word is the minor version number. | ||
dwExtVersion Specifies the extension version number under which the service provider for the line device will be operating. This version number is keyed to the specified Extension ID. The high-order word is the major version number and the low-order word is the minor version number. | ||
dwExtensionID0 dwExtensionID1 dwExtensionID2 dwExtensionID3 These four DWORDs specify the globally unique Extension ID for the service provider for the phone device. | ||
dwProviderInfoSize dwProviderInfoOffset The size in bytes and the offset in bytes from the beginning of this data structure of the variable sized field containing service provider-specific information. | ||
dwPhoneInfoSize dwPhoneInfoOffset The size in bytes and the offset in bytes from the beginning of this data structure of the variable sized device field containing phone-specific information. | ||
dwPermanentPhoneID Specifies the permanent DWORD identifier by which the phone device is known in the system's configuration. | ||
dwPhoneNameSize dwPhoneNameOffset The size in bytes and the offset in bytes from the beginning of this data structure of the variable sized device field containing user configurable name for this phone device. This name can be configured by the user when configuring the phone device's service provider and is provided for the user's convenience. | ||
dwPhoneStates Specifies the state changes for this phone device for which the app can be notified via a PHONE_STATE callback message, of type PHONESTATE. Values are: | ||
PHONESTATE_OTHER An other phone status information item not listed below has changed. | ||
PHONESTATE_CONNECTED The connection between the phone device and the API was just made. This happens when the API is first invoked, or when the wire connection the phone to the PC is plugged in with the API active. | ||
PHONESTATE_DISCONNECTED The connection between the phone device and the API was just broken. This happens when the wire connecting the phone set to the PC is unplugged while the API is active. | ||
PHONESTATE_OWNER The number of owners for the phone device has changed. | ||
PHONESTATE_MONITORS The number of monitors for the phone device has changed. | ||
PHONESTATE_DISPLAY The display of the phone has changed. | ||
PHONESTATE_LAMP A lamp of the phone has changed. | ||
PHONESTATE_RINGMODE The ring mode of the phone has changed. | ||
PHONESTATE_RINGVOLUME The ring volume of the phone has changed. | ||
PHONESTATE_HANDSETHOOKSWITCH The handset hookswitch state has changed. | ||
PHONESTATE_HANDSETVOLUME The handset's speaker volume setting has changed. | ||
PHONESTATE_HANDSETGAIN The handset's mic gain setting has changed. | ||
PHONESTATE_SPEAKERHOOKSWITCH The speakerphone's hookswitch state has changed. | ||
PHONESTATE_SPEAKERVOLUME The speakerphone's speaker volume setting has changed. | ||
PHONESTATE_SPEAKERGAIN The speakerphone's mic gain setting state has changed. | ||
PHONESTATE_HEADSETHOOKSWITCH The headset's hookswitch state has changed. | ||
PHONESTATE_HEADSETVOLUME The headset's speaker volume setting has changed. | ||
PHONESTATE_HEADSETGAIN The headset's mic gain setting has changed. | ||
PHONESTATE_SUSPEND The app's use of the phone is temporarily suspended. | ||
PHONESTATE_RESUME The app's use of the phone device is resumed after having been suspended for some time. | ||
PHONESTATE_DEVSPECIFIC The phone's device specific information has changed. | ||
dwStringFormat Specifies the string format to be used with this phone device, of type STRINGFORMAT. Values are: | ||
This is ASCII string format using one byte per character. | ||
STRINGFORMAT_DBCS This is DBCS string format using two bytes per character. | ||
STRINGFORMAT_UNICODE This is unicode string format using two bytes per character. | ||
dwHookSwitchDevs This field specifies the phone's hookswitch devices, of type PHONEHOOKSWITCHDEV. Values are: | ||
PHONEHOOKSWITCHDEV_HANDSET This is the ubiquitous, hand held ear and mouth piece. | ||
PHONEHOOKSWITCHDEV_SPEAKER A built-in loudspeaker and microphone. This could also be an externally connected adjunct to the telephone set. | ||
PHONEHOOKSWITCHDEV_HEADSET This is a headset connected to the phone set. | ||
dwHandsetHookSwitchModes dwSpeakerHookSwitchModes dwHeadsetHookSwitchModes This field specifies the phone's hookswitch mode capabilities of the handset, speaker, or headset respectively, of type PHONEHOOKSWITCHMODE. The field is only meaningful if the hookswitch device is listed in dwHookSwitchDevs. Values are: | ||
PHONEHOOKSWITCHMODE_ONHOOK The device's mic and speaker are both onhook. | ||
PHONEHOOKSWITCHMODE_MIC The devicer's mic is active, the speaker is mute. | ||
PHONEHOOKSWITCHMODE_SPEAKER The device's speaker is active, the mic is mute. | ||
PHONEHOOKSWITCHMODE_MICSPEAKER The device's mic and speaker are both active. | ||
dwVolumeFlags This field specifies the volume setting capabilities of the phone device's speaker components. If the bit in position PHONEHOOKSWITCHDEV is TRUE then the volume of the corresponding hookswitch device's speaker component can be adjusted via phoneSetVolume; otherwise FALSE. | ||
dwGainFlags This field specifies the gain setting capabilities of the phone device's mic components. Of the bit position PHONEHOOKSWITCHDEV is TRUE then the volume of the corresponding hookswitch device's mic component can be adjusted via the phoneSetGain; otherwise FALSE. | ||
dwDisplayNumRows This field specifies the display capabilities of the phone device by describing the number of rows in the phone display. dwDisplayNumRows and dwDisplayNumColumns are both zero for a phone device without a display. | ||
dwDisplayNumColumns This field specifies the display capabilities of the phone device by describing the number of columns in the phone display. dwDisplayNumRows and dwDisplayNumColumns are both zero for a phone device without a display. | ||
dwNumRingModes This field specifies the ring capabilities of the phone device. The phone is able to ring with dwNumRingModes different ring patterns, identified as 1, 2, ... dwNumRingModes - 1. A ring patterns of zero is meant to use silence. | ||
dwNumButtonLamps This field specifies the number of button/lamps on the phone device that are detectable in the API. Button/lamps are identified by their ID. Valid button/lamp IDs range from zero to dwNumButtonLamps - 1. The keypad buttons '0', through '9', '*', and '#' are assigned the IDs 0 through 12. | ||
dwButtonModesSize dwButtonModesOffset The size in bytes and the offset from the beginning of this data structure in bytes of the variable sized field containing the button modes of the phone's buttons, of type PHONEBUTTONMODE. The array is indexed by button/lamp ID. Values are: | ||
PHONEBUTTONMODE_DUMMY This value is used to describe a button/lamp position that has no corresponding button, but has only a lamp. If the phone provides any non-DUMMY buttons, then the PHONE_BUTTON message will be sent to the application if a button is pressed at the phone device. | ||
PHONEBUTTONMODE_CALL The button is assigned to a call appearance. | ||
PHONEBUTTONMODE_FEATURE The button is assigned to requesting features from the switch, such as hold, conference, transfer, etc. | ||
PHONEBUTTONMODE_KEYPAD The button is one of the twelve keypad buttons, '0' through '9', '*', and '#'. | ||
PHONEBUTTONMODE_LOCAL The button is a local function button, such as mute or volume control. | ||
PHONEBUTTONMODE_DISPLAY The button is a "soft" button associated with the phone's display. A phone set can have zero or more display buttons. | ||
dwButtonFunctionsSize dwButtonFunctionsOffset The size in bytes and the offset from the beginning of this data structure in bytes of the variable sized field containing the button modes of the phone's buttons, of type PHONEBUTTONFUNCTION. The array is indexed by button/lamp ID. | ||
dwLampModesSize dwLampModesOffset The size in bytes and the offset from the beginning of this data structure in bytes of the variable sized field containing the lamp modes of the phone's lamps, of type PHONELAMPMODE. The array is indexed by button/lamp ID. 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. | ||
dwNumSetData The number of different download areas in the phone device. The different areas are referred to using the data IDs 0, 1, ..., dwNumSetData - 1. If this field is zero, then the phone does not support the download capability. | ||
dwSetDataSizesSize dwSetDataSizesOffset The size in bytes and the offset from the beginning of this data structure in bytes of the variable sized field containing the sizes (in bytes) of the phone's download data areas. This is an array with DWORD-sized elements, indexed by data ID. | ||
dwNumGetData The number of different upload areas in the phone device. The different areas are referred to using the data IDs 0, 1, ..., dwNumGetData - 1. If this field is zero, then the phone does not support the upload capability. | ||
dwGetDataSizesSize dwGetDataSizesOffset The size in bytes and the offset from the beginning of this data structure in bytes of the variable sized field containing the sizes (in bytes) of the phone's upload data areas. This is an array with DWORD-sized elements, indexed by data ID. | ||
Extensibility | Device specific extensions should use the DevSpecific (dwDevSpecificSize and dwDevSpecificOffset) variable sized area of this data structure. | |
Comments | None. | |
See Also | Functions: phoneGetDevCaps Data types: PHONEBUTTONMODE, PHONELAMPMODE, PHONEHOOKSWITCHDEV |