Структура PHONECAPS (tapi.h)
Структура PHONECAPS описывает возможности телефонного устройства. Функции phoneGetDevCaps и TSPI_phoneGetDevCaps возвращают эту структуру.
Синтаксис
typedef struct phonecaps_tag {
DWORD dwTotalSize;
DWORD dwNeededSize;
DWORD dwUsedSize;
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;
DWORD dwDevSpecificSize;
DWORD dwDevSpecificOffset;
DWORD dwDeviceClassesSize;
DWORD dwDeviceClassesOffset;
DWORD dwPhoneFeatures;
DWORD dwSettableHandsetHookSwitchModes;
DWORD dwSettableSpeakerHookSwitchModes;
DWORD dwSettableHeadsetHookSwitchModes;
DWORD dwMonitoredHandsetHookSwitchModes;
DWORD dwMonitoredSpeakerHookSwitchModes;
DWORD dwMonitoredHeadsetHookSwitchModes;
GUID PermanentPhoneGuid;
} PHONECAPS, *LPPHONECAPS;
Члены
dwTotalSize
Общий размер, выделенный для этой структуры данных, в байтах.
dwNeededSize
Размер для этой структуры данных, необходимый для хранения всей возвращаемой информации, в байтах.
dwUsedSize
Размер части структуры данных, содержащей полезную информацию, в байтах.
dwProviderInfoSize
Размер сведений о поставщике в байтах. Если сведения, относящиеся к поставщику, являются указателем на строку, размер должен включать признак конца null .
dwProviderInfoOffset
Смещение от начала структуры до поля изменяющегося размера, содержащего сведения о поставщике услуг.
Этот член предоставляет сведения об оборудовании и (или) программном обеспечении поставщика, например имя поставщика и номера версий оборудования и программного обеспечения. Эти сведения могут быть полезны, если пользователю нужно обратиться в службу поддержки клиентов с проблемами, связанными с поставщиком. Размер поля определяется dwProviderInfoSize.
dwPhoneInfoSize
Размер сведений о телефоне в байтах. Если сведения о телефоне являются указателем на строку, размер должен включать признак конца null .
dwPhoneInfoOffset
Смещение от начала структуры до поля устройства изменяющегося размера, содержащего сведения о телефоне.
Этот член предоставляет сведения о подключенном телефонном устройстве, такие как изготовитель телефонного устройства, имя модели, версия программного обеспечения и т. д. Эти сведения могут быть полезны, если пользователю нужно позвонить в службу поддержки клиентов с проблемами, связанными с телефоном. Размер поля определяется dwPhoneInfoSize.
dwPermanentPhoneID
Постоянный идентификатор, по которому телефонное устройство известно в конфигурации системы.
dwPhoneNameSize
Размер настраиваемого имени телефона, включая признак конца null , в байтах.
dwPhoneNameOffset
Смещение от начала структуры до поля устройства изменяющегося размера, содержащего настраиваемое пользователем имя для этого телефонного устройства. Это имя может быть задано пользователем при настройке поставщика услуг телефонного устройства и предоставляется для удобства пользователя. Размер поля определяется dwPhoneNameSize.
dwStringFormat
Формат строки, используемый с этим телефонным устройством. Этот элемент использует одну из констант STRINGFORMAT_.
dwPhoneStates
Изменения состояния этого телефонного устройства, о которых приложение может быть уведомлено в PHONE_STATE сообщении. Это член одной или нескольких констант PHONESTATE_.
dwHookSwitchDevs
Устройства-перехватчики телефона. Этот элемент использует одну из констант PHONEHOOKSWITCHDEV_.
dwHandsetHookSwitchModes
Режим перехватчика телефона. Элемент имеет смысл только в том случае, если устройство hookswitch указано в dwHookSwitchDevs. Он использует одну из констант PHONEHOOKSWITCHMODE_.
dwSpeakerHookSwitchModes
Режим перехватчика динамика. Элемент имеет смысл только в том случае, если устройство hookswitch указано в dwHookSwitchDevs. Он использует одну из констант PHONEHOOKSWITCHMODE_.
dwHeadsetHookSwitchModes
Режим перехватчика гарнитуры. Элемент имеет смысл только в том случае, если устройство hookswitch указано в dwHookSwitchDevs. Он использует одну из констант PHONEHOOKSWITCHMODE_.
dwVolumeFlags
Возможности настройки громкости компонентов динамиков телефонного устройства. Если бит в положении PHONEHOOKSWITCHDEV_ имеет значение TRUE, громкость соответствующего компонента динамиков устройства-перехватчика можно настроить с помощью phoneSetVolume.
dwGainFlags
Возможности настройки возможностей микрофонных компонентов телефонного устройства. Если битовое положение PHONEHOOKSWITCHDEV_ имеет значение TRUE, громкость микрофонного компонента соответствующего устройства-перехватчика можно настроить с помощью phoneSetGain.
dwDisplayNumRows
Отображение возможностей телефонного устройства путем описания количества строк на дисплее телефона. Члены dwDisplayNumRows и dwDisplayNumColumns равны нулю для телефонного устройства без дисплея.
dwDisplayNumColumns
Возможности отображения телефонного устройства путем описания количества столбцов на дисплее телефона. Члены dwDisplayNumRows и dwDisplayNumColumns равны нулю для телефонного устройства без дисплея.
dwNumRingModes
Возможности звонка телефонного устройства. Телефон может звонить с помощью dwNumRingModes различных шаблонов звонка, определенных как 1, 2, через dwNumRingModes минус один. Если значение этого элемента равно 0, приложения не могут контролировать режим звонка телефона. Если значение этого элемента больше 0, оно указывает количество кольцевых режимов в дополнение к режиму тишины, поддерживаемое поставщиком услуг. Значение 0 в параметре lpdwRingModephoneGetRing или параметре dwRingModephoneSetRing указывает на тишину (телефон не звонит или не должен выполняться), а значения dwRingMode от 1 до dwNumRingModes являются допустимыми режимами звонка для телефонного устройства.
dwNumButtonLamps
Количество кнопок или ламп на телефонном устройстве, которые можно обнаружить в TAPI. Кнопки и лампы идентифицируются по их идентификатору. Допустимые идентификаторы кнопки или лампы варьируются от нуля до dwNumButtonLamps минус единица. Кнопкам клавиатуры "0", "9", "*" и "#" назначаются идентификаторы от 0 до 12.
dwButtonModesSize
Размер массива режимов кнопки в байтах.
dwButtonModesOffset
Смещение от начала этой структуры до поля изменяющегося размера, содержащего режимы кнопок телефона. Массив индексируется по идентификатору кнопки или лампы. В этом массиве используются константы PHONEBUTTONMODE_. Размер массива определяется dwButtonModesSize.
dwButtonFunctionsSize
Размер поля функции кнопки в байтах.
dwButtonFunctionsOffset
Смещение от начала этой структуры до поля изменяющегося размера, содержащего функции кнопок телефона. Массив индексируется по идентификатору кнопки или лампы. В этом массиве используются константы PHONEBUTTONFUNCTION_. Размер массива определяется dwButtonFunctionsSize.
dwLampModesSize
Размер массива режимов лампы в байтах.
dwLampModesOffset
Смещение от начала этой структуры до поля изменяющегося размера, содержащего режимы ламп телефонных ламп. Массив индексируется по идентификатору кнопки или лампы. В этом массиве используются константы PHONELAMPMODE_. Размер массива определяется dwLampModesSize.
dwNumSetData
Количество различных областей загрузки на телефонном устройстве. К различным областям относятся идентификаторы данных 0, 1, , dwNumSetData минус один. Если этот элемент равен нулю, телефон не поддерживает возможность скачивания.
dwSetDataSize
Размер массива размеров данных в байтах.
dwSetDataOffset
Смещение от начала этой структуры до поля изменяющегося размера, содержащего размеры (в байтах) областей загрузки телефона. Это массив с элементами размера DWORD, индексируемыми по идентификатору данных. Размер массива определяется dwSetDataSize.
dwNumGetData
Количество различных областей отправки на телефонном устройстве. Различные области называются с помощью идентификаторов данных 0, 1, , dwNumGetData минус один. Если это поле равно нулю, телефон не поддерживает возможность отправки.
dwGetDataSize
Размер массива размеров данных в байтах.
dwGetDataOffset
Смещение от начала этой структуры до поля изменяющегося размера, содержащего размеры (в байтах) областей передачи данных телефона. Это массив с элементами размера DWORD, индексируемыми по идентификатору данных. Размер массива определяется dwGetDataSize.
dwDevSpecificSize
Размер поля устройства в байтах. Если сведения об устройстве являются указателем на строку, размер должен включать признак конца null .
dwDevSpecificOffset
Смещение от начала этой структуры к полю устройства с разными размерами. Размер поля определяется dwDevSpecificSize.
dwDeviceClassesSize
Размер поддерживаемых идентификаторов классов устройств в байтах.
dwDeviceClassesOffset
Смещение от начала этой структуры до строки, состоящей из идентификаторов классов устройств, поддерживаемых на этом устройстве для использования с phoneGetID. Идентификаторы разделяются nulls, а за последним идентификатором в списке следуют два значения NULL. Размер поля определяется dwDeviceClassesSize.
dwPhoneFeatures
Флаги, указывающие, какие функции API телефонии можно вызывать на телефоне. Ноль указывает, что соответствующая функция не реализована и никогда не может быть вызвана приложением на телефоне; значение указывает, что функция может быть вызвана в зависимости от состояния устройства и других факторов. Этот элемент использует константы PHONEFEATURE_.
dwSettableHandsetHookSwitchModes
PHONEHOOKSWITCHMODE_ значения, которые можно задать на телефоне с помощью phoneSetHookSwitch.
dwSettableSpeakerHookSwitchModes
PHONEHOOKSWITCHMODE_ значения, которые можно задать на громкой связи с помощью phoneSetHookSwitch.
dwSettableHeadsetHookSwitchModes
PHONEHOOKSWITCHMODE_ значения, которые можно задать на гарнитуре с помощью phoneSetHookSwitch.
dwMonitoredHandsetHookSwitchModes
PHONEHOOKSWITCHMODE_ значения, которые можно обнаружить и сообщить для телефона в PHONE_STATE сообщении и по телефонуGetHookSwitch.
dwMonitoredSpeakerHookSwitchModes
PHONEHOOKSWITCHMODE_ значения, которые можно обнаружить и сообщить для громкоговорителя в PHONE_STATE сообщении и с помощью phoneSetHookSwitch.
dwMonitoredHeadsetHookSwitchModes
PHONEHOOKSWITCHMODE_ значения, которые можно обнаружить и сообщить для гарнитуры в сообщении PHONE_STATE и с помощью phoneSetHookSwitch.
PermanentPhoneGuid
Идентификатор GUID, постоянно связанный с этим телефоном.
Комментарии
Расширения, относящиеся к устройству, должны использовать область DevSpecific (dwDevSpecificSize и dwDevSpecificOffset) с разными размерами этой структуры данных.
Члены dwDeviceClassesSize через dwMonitoredHeadsetHookSwitchModes доступны только для приложений, которые открывают телефонное устройство с API версии 2.0 или более поздней.
Требования
Требование | Значение |
---|---|
Заголовок | tapi.h |