PHONECAPS-Struktur (tapi.h)

Die PHONECAPS-Struktur beschreibt die Funktionen eines Telefongeräts. Die Funktionen phoneGetDevCaps und TSPI_phoneGetDevCaps geben diese Struktur zurück.

Syntax

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;

Member

dwTotalSize

Gesamtgröße, die dieser Datenstruktur in Bytes zugeordnet ist.

dwNeededSize

Größe für diese Datenstruktur, die benötigt wird, um alle zurückgegebenen Informationen in Bytes zu enthalten.

dwUsedSize

Größe des Teils dieser Datenstruktur, der nützliche Informationen enthält, in Bytes.

dwProviderInfoSize

Größe der anbieterspezifischen Informationen in Bytes. Wenn die anbieterspezifischen Informationen ein Zeiger auf eine Zeichenfolge sind, muss die Größe den NULL-Abschlussator enthalten.

dwProviderInfoOffset

Offset vom Anfang der Struktur auf das Feld mit unterschiedlicher Größe, das dienstanbieterspezifische Informationen enthält.

Dieses Mitglied stellt Informationen zur Hardware und/oder Software des Anbieters bereit, z. B. den Herstellernamen und die Versionsnummern von Hardware und Software. Diese Informationen können nützlich sein, wenn ein Benutzer den Kundendienst mit Problemen mit dem Anbieter anrufen muss. Die Größe des Felds wird von dwProviderInfoSize angegeben.

dwPhoneInfoSize

Größe der telefonspezifischen Informationen in Bytes. Wenn es sich bei den telefonspezifischen Informationen um einen Zeiger auf eine Zeichenfolge handelt, muss die Größe den NULL-Abschlussator enthalten.

dwPhoneInfoOffset

Offset vom Anfang der Struktur auf das variabel große Gerätefeld mit telefonspezifischen Informationen.

Dieses Element stellt Informationen zum angefügten Telefongerät bereit, z. B. zum Hersteller des Telefongeräts, zum Modellnamen, zur Softwareversion usw. Diese Informationen können nützlich sein, wenn ein Benutzer bei Problemen mit dem Telefon den Kundendienst anrufen muss. Die Größe des Felds wird von dwPhoneInfoSize angegeben.

dwPermanentPhoneID

Permanenter Bezeichner, unter dem das Telefongerät in der Systemkonfiguration bekannt ist.

dwPhoneNameSize

Größe des konfigurierbaren Namens für das Telefon, einschließlich des NULL-Abschlusszeichens , in Bytes.

dwPhoneNameOffset

Offset vom Anfang der Struktur auf das gerätevariable Feld, das einen vom Benutzer konfigurierbaren Namen für dieses Telefongerät enthält. Dieser Name kann vom Benutzer beim Konfigurieren des Dienstanbieters des Telefongeräts konfiguriert werden und wird für die Benutzerfreundlichkeit bereitgestellt. Die Größe des Felds wird von dwPhoneNameSize angegeben.

dwStringFormat

Zeichenfolgenformat, das mit diesem Telefongerät verwendet werden soll. Dieses Element verwendet eine der STRINGFORMAT_ Konstanten.

dwPhoneStates

Zustandsänderungen für dieses Telefongerät, für das die Anwendung in einer PHONE_STATE-Nachricht benachrichtigt werden kann. Dieses Element ist mindestens eine der PHONESTATE_ Konstanten.

dwHookSwitchDevs

Die Hookswitchgeräte des Telefons. Dieses Element verwendet eine der PHONEHOOKSWITCHDEV_ Konstanten.

dwHandsetHookSwitchModes

Hookswitch-Modus des Mobilteils. Der Member ist nur dann sinnvoll, wenn das Hookswitch-Gerät in dwHookSwitchDevs aufgeführt ist. Es verwendet eine der PHONEHOOKSWITCHMODE_ Konstanten.

dwSpeakerHookSwitchModes

Hookswitch-Modus des Lautsprechers. Der Member ist nur dann sinnvoll, wenn das Hookswitch-Gerät in dwHookSwitchDevs aufgeführt ist. Es verwendet eine der PHONEHOOKSWITCHMODE_ Konstanten.

dwHeadsetHookSwitchModes

Hookswitch-Modus des Headsets. Der Member ist nur dann sinnvoll, wenn das Hookswitch-Gerät in dwHookSwitchDevs aufgeführt ist. Es verwendet eine der PHONEHOOKSWITCHMODE_ Konstanten.

dwVolumeFlags

Lautstärkeeinstellungsfunktionen der Lautsprecherkomponenten des Telefongeräts. Wenn das Bit in position PHONEHOOKSWITCHDEV_ true ist, kann die Lautstärke der Lautsprecherkomponente des entsprechenden Hookswitch-Geräts mit phoneSetVolume eingestellt werden.

dwGainFlags

Verstärkungseinstellungsfunktionen der Mikrofonkomponenten des Telefongeräts. Wenn die Bitposition PHONEHOOKSWITCHDEV_ TRUE ist, kann die Lautstärke der Mikrofonkomponente des entsprechenden Hookswitch-Geräts mit phoneSetGain eingestellt werden.

dwDisplayNumRows

Zeigen Sie die Funktionen des Telefongeräts an, indem Sie die Anzahl der Zeilen in der Telefonanzeige beschreiben. Die Elemente dwDisplayNumRows und dwDisplayNumColumns sind beide null für ein Telefongerät ohne Anzeige.

dwDisplayNumColumns

Zeigen Sie die Funktionen des Telefongeräts an, indem Sie die Anzahl der Spalten in der Telefonanzeige beschreiben. Die Elemente dwDisplayNumRows und dwDisplayNumColumns sind beide null für ein Telefongerät ohne Anzeige.

dwNumRingModes

Klingelfunktionen des Telefongeräts. Das Telefon kann mit dwNumRingModes verschiedenen Ringmustern klingeln , die als 1, 2 durch dwNumRingModes minus 1 identifiziert werden. Wenn der Wert dieses Members 0 ist, haben Anwendungen keine Kontrolle über den Ringmodus des Telefons. Wenn der Wert dieses Members größer als 0 ist, gibt er die Anzahl der Ringmodi an, zusätzlich zur Stille, die vom Dienstanbieter unterstützt werden. Ein Wert von 0 im lpdwRingMode-Parameter von phoneGetRing oder der dwRingMode-Parameter von phoneSetRing gibt die Stille an (das Telefon klingelt nicht oder sollte nicht klingeln), und dwRingMode-Werte von 1 bis dwNumRingModes sind gültige Ringmodi für das Telefongerät.

dwNumButtonLamps

Anzahl der Tasten/Lampen auf dem Telefongerät, die in TAPI erkennbar sind. Schaltflächen/Lampen werden durch ihren Bezeichner identifiziert. Gültige Schaltflächen-/Lampenbezeichner reichen von null bis dwNumButtonLamps minus 1. Den Tasten "0" bis "9", "*" und "#" werden die Bezeichner 0 bis 12 zugewiesen.

dwButtonModesSize

Größe des Schaltflächenmodiarrays in Bytes.

dwButtonModesOffset

Offset vom Anfang dieser Struktur auf das variabel große Feld, das die Schaltflächenmodi der Tasten des Telefons enthält. Das Array wird durch Schaltflächen-/Lampenbezeichner indiziert. Dieses Array verwendet die PHONEBUTTONMODE_ Konstanten. Die Größe des Arrays wird von dwButtonModesSize angegeben.

dwButtonFunctionsSize

Größe des Felds "Schaltflächenfunktionen" in Bytes.

dwButtonFunctionsOffset

Offset vom Anfang dieser Struktur auf das variabel große Feld, das die Schaltflächenfunktionen der Tasten des Telefons enthält. Das Array wird durch Schaltflächen-/Lampenbezeichner indiziert. Dieses Array verwendet die PHONEBUTTONFUNCTION_ Konstanten. Die Größe des Arrays wird durch dwButtonFunctionsSize angegeben.

dwLampModesSize

Größe des Arrays der Lampenmodi in Bytes.

dwLampModesOffset

Offset vom Anfang dieser Struktur zu dem variabel großen Feld, das die Lampenmodi der Lampen des Telefons enthält. Das Array wird durch Schaltflächen-/Lampenbezeichner indiziert. Dieses Array verwendet die PHONELAMPMODE_ Konstanten. Die Größe des Arrays wird von dwLampModesSize angegeben.

dwNumSetData

Anzahl der verschiedenen Downloadbereiche auf dem Telefongerät. Auf die verschiedenen Bereiche wird mit den Daten-IDs 0, 1, , dwNumSetData minus 1 verwiesen. Wenn dieser Member 0 ist, unterstützt das Telefon die Downloadfunktion nicht.

dwSetDataSize

Größe des Datengrößenarrays in Bytes.

dwSetDataOffset

Offset vom Anfang dieser Struktur auf das Feld mit unterschiedlicher Größe, das die Größen (in Bytes) der Downloaddatenbereiche des Telefons enthält. Dies ist ein Array mit Elementen im DWORD-Format, die nach Datenbezeichner indiziert werden. Die Größe des Arrays wird von dwSetDataSize angegeben.

dwNumGetData

Anzahl der verschiedenen Uploadbereiche auf dem Telefongerät. Auf die verschiedenen Bereiche wird mit den Daten-IDs 0, 1, , dwNumGetData minus 1 verwiesen. Wenn dieses Feld 0 ist, unterstützt das Telefon die Uploadfunktion nicht.

dwGetDataSize

Größe des Datengrößenarrays in Bytes.

dwGetDataOffset

Offset vom Anfang dieser Struktur auf das Feld mit unterschiedlicher Größe, das die Größen (in Bytes) der Uploaddatenbereiche des Smartphones enthält. Dies ist ein Array mit Elementen im DWORD-Format, die nach Datenbezeichner indiziert werden. Die Größe des Arrays wird durch dwGetDataSize angegeben.

dwDevSpecificSize

Größe des gerätespezifischen Felds in Bytes. Wenn es sich bei den gerätespezifischen Informationen um einen Zeiger auf eine Zeichenfolge handelt, muss die Größe den NULL-Abschlussator enthalten.

dwDevSpecificOffset

Offset vom Anfang dieser Struktur auf das variabel große gerätespezifische Feld. Die Größe des Felds wird von dwDevSpecificSize angegeben.

dwDeviceClassesSize

Größe der unterstützten Geräteklassenbezeichner in Bytes.

dwDeviceClassesOffset

Offset vom Anfang dieser Struktur zu einer Zeichenfolge, die aus den Geräteklassenbezeichnern besteht, die auf diesem Gerät für die Verwendung mit phoneGetID unterstützt werden. Die Bezeichner sind durch NULLs getrennt, und dem letzten Bezeichner in der Liste folgen zwei NULLs. Die Größe des Felds wird von dwDeviceClassesSize angegeben.

dwPhoneFeatures

Flags, die angeben, welche Telefonie-API-Funktionen auf dem Telefon aufgerufen werden können. Eine Null gibt an, dass das entsprechende Feature nicht implementiert ist und niemals von der Anwendung auf dem Telefon aufgerufen werden kann. eine gibt an, dass das Feature abhängig vom Gerätestatus und anderen Faktoren aufgerufen werden kann. Dieser Member verwendet PHONEFEATURE_ Konstanten.

dwSettableHandsetHookSwitchModes

PHONEHOOKSWITCHMODE_ Werte, die mit phoneSetHookSwitch auf dem Mobilteil festgelegt werden können.

dwSettableSpeakerHookSwitchModes

PHONEHOOKSWITCHMODE_ Werte, die mit phoneSetHookSwitch auf der Freisprecheinrichtung festgelegt werden können.

dwSettableHeadsetHookSwitchModes

PHONEHOOKSWITCHMODE_ Werte, die mit phoneSetHookSwitch auf dem Headset festgelegt werden können.

dwMonitoredHandsetHookSwitchModes

PHONEHOOKSWITCHMODE_ Werte, die in einer PHONE_STATE-Nachricht und per phoneGetHookSwitch erkannt und für das Mobilteil gemeldet werden können.

dwMonitoredSpeakerHookSwitchModes

PHONEHOOKSWITCHMODE_ Werte, die für die Freisprecheinrichtung erkannt und gemeldet werden können, in einer PHONE_STATE Nachricht und per phoneSetHookSwitch.

dwMonitoredHeadsetHookSwitchModes

PHONEHOOKSWITCHMODE_ Werte, die für das Headset in einer PHONE_STATE-Nachricht und per phoneSetHookSwitch erkannt und gemeldet werden können.

PermanentPhoneGuid

Die GUID, die diesem Telefon dauerhaft zugeordnet ist.

Hinweise

Gerätespezifische Erweiterungen sollten den DevSpecific-Bereich (dwDevSpecificSize und dwDevSpecificOffset) mit unterschiedlicher Größe dieser Datenstruktur verwenden.

Die Member dwDeviceClassesSize über dwMonitoredHeadsetHookSwitchModes sind nur für Anwendungen verfügbar, die das Telefongerät mit einer API-Version von 2.0 oder höher öffnen.

Anforderungen

Anforderung Wert
Header tapi.h

Weitere Informationen

PHONE_BUTTON

PHONE_CLOSE

PHONE_STATE

TSPI_phoneGetDevCaps

phoneGetDevCaps

phoneGetHookSwitch

phoneGetRing

phoneSetGain

phoneSetHookSwitch

phoneSetRing

phoneSetVolume