PHONEBUTTONINFO
The PHONEBUTTONINFO
structure contains information about a button on a phone device.
typedef struct phonebuttoninfo_tag {
DWORD dwTotalSize;
DWORD dwNeededSize;
DWORD dwUsedSize;
DWORD dwButtonMode;
DWORD dwButtonFunction;
DWORD dwButtonTextSize;
DWORD dwButtonTextOffset;
DWORD dwDevSpecificSize;
DWORD dwDevSpecificOffset;
DWORD dwButtonState;
} PHONEBUTTONINFO, FAR *LPPHONEBUTTONINFO;
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.
dwButtonMode
The mode or
general usage class of the button. This parameter uses the following
PHONEBUTTONMODE_ constants:
PHONEBUTTONMODE_DUMMY
This value is
used to describe a button/lamp position that has no corresponding button but
has only a lamp.
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, and
transfer.
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.
dwButtonFunction
The function
assigned to the button. This field uses the PHONEBUTTONFUNCTION_ constants.
dwButtonTextSize
dwButtonTextOffset
The size in
bytes of the variably sized field containing descriptive text for this button.,
and the offset in bytes from the beginning of this data structure. The format
of this information is as specified in the dwStringFormat field of the
phone's device capabilities.
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.
dwButtonState
For the phoneGetButtonInfo
Remarks
Device-specific
extensions should use the DevSpecific (dwDevSpecificSize and dwDevSpecificOffset)
variably sized area of this data structure.
Older
applications will have been compiled without this field in the PHONEBUTTONINFO
structure, and using a SIZEOF PHONEBUTTONINFO smaller than the
new size. The application passes in a dwAPIVersion parameter with the phoneOpen
New service
providers (which support the new API version) must examine the API version
passed in. If the API version is less than the highest version supported by the
provider, the service provider must not fill in fields not supported in older
API versions, as these would fall in the variable portion of the older
structure.
New
applications must be cognizant of the API version negotiated, and not examine
the contents of fields in the fixed portion beyond the original end of the
fixed portion of the structure for the negotiated API version.
See Also