Estructura PHONECAPS (tapi.h)

La estructura PHONECAPS describe las funcionalidades de un dispositivo telefónico. Las funciones phoneGetDevCaps y TSPI_phoneGetDevCaps devuelven esta estructura.

Sintaxis

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;

Miembros

dwTotalSize

Tamaño total asignado a esta estructura de datos, en bytes.

dwNeededSize

Tamaño de esta estructura de datos necesaria para contener toda la información devuelta, en bytes.

dwUsedSize

Tamaño de la parte de esta estructura de datos que contiene información útil, en bytes.

dwProviderInfoSize

Tamaño de la información específica del proveedor, en bytes. Si la información específica del proveedor es un puntero a una cadena, el tamaño debe incluir el terminador null .

dwProviderInfoOffset

Desplazamiento desde el principio de la estructura hasta el campo de tamaño variable que contiene información específica del proveedor de servicios.

Este miembro proporciona información sobre el hardware o el software del proveedor, como el nombre del proveedor y los números de versión de hardware y software. Esta información puede ser útil cuando un usuario necesita llamar al servicio de atención al cliente con problemas relacionados con el proveedor. DwProviderInfoSize especifica el tamaño del campo.

dwPhoneInfoSize

Tamaño de la información específica del teléfono, en bytes. Si la información específica del teléfono es un puntero a una cadena, el tamaño debe incluir el terminador null .

dwPhoneInfoOffset

Desplazamiento desde el principio de la estructura hasta el campo de dispositivo de tamaño variable que contiene información específica del teléfono.

Este miembro proporciona información sobre el dispositivo telefónico conectado, como el fabricante del dispositivo telefónico, el nombre del modelo, la versión de software, etc. Esta información puede ser útil cuando un usuario necesita llamar al servicio de atención al cliente con problemas relacionados con el teléfono. DwPhoneInfoSize especifica el tamaño del campo.

dwPermanentPhoneID

Identificador permanente por el que se conoce el dispositivo telefónico en la configuración del sistema.

dwPhoneNameSize

Tamaño del nombre configurable para el teléfono, incluido el terminador nulo , en bytes.

dwPhoneNameOffset

Desplazamiento desde el principio de la estructura hasta el campo de dispositivo de tamaño variable que contiene un nombre configurable por el usuario para este dispositivo telefónico. El usuario puede configurar este nombre al configurar el proveedor de servicios del dispositivo telefónico y se proporciona para la comodidad del usuario. DwPhoneNameSize especifica el tamaño del campo.

dwStringFormat

Formato de cadena que se usará con este dispositivo telefónico. Este miembro usa una de las STRINGFORMAT_ constantes.

dwPhoneStates

Cambios de estado para este dispositivo telefónico para el que se puede notificar a la aplicación en un mensaje de PHONE_STATE . Este miembro es una o varias de las constantes de PHONESTATE_.

dwHookSwitchDevs

Dispositivos hookswitch del teléfono. Este miembro usa una de las PHONEHOOKSWITCHDEV_ constantes.

dwHandsetHookSwitchModes

Modo hookswitch del terminal. El miembro solo es significativo si el dispositivo hookswitch aparece en dwHookSwitchDevs. Usa una de las constantes PHONEHOOKSWITCHMODE_.

dwSpeakerHookSwitchModes

Modo hookswitch del altavoz. El miembro solo es significativo si el dispositivo hookswitch aparece en dwHookSwitchDevs. Usa una de las PHONEHOOKSWITCHMODE_ constantes.

dwHeadsetHookSwitchModes

Modo hookswitch del casco. El miembro solo es significativo si el dispositivo hookswitch aparece en dwHookSwitchDevs. Usa una de las constantes PHONEHOOKSWITCHMODE_.

dwVolumeFlags

Capacidades de configuración de volumen de los componentes del altavoz del dispositivo telefónico. Si el bit en posición PHONEHOOKSWITCHDEV_ es TRUE, el volumen del componente de altavoz del dispositivo hookswitch correspondiente se puede ajustar con phoneSetVolume.

dwGainFlags

Funcionalidades de configuración de ganancia de los componentes de micrófono del dispositivo telefónico. Si la posición del bit PHONEHOOKSWITCHDEV_ es TRUE, el volumen del componente de micrófono del dispositivo hookswitch correspondiente se puede ajustar con phoneSetGain.

dwDisplayNumRows

Para mostrar las funcionalidades del dispositivo telefónico, describa el número de filas en la pantalla del teléfono. Los miembros dwDisplayNumRows y dwDisplayNumColumns son cero para un dispositivo telefónico sin una pantalla.

dwDisplayNumColumns

Muestra las funcionalidades del dispositivo telefónico mediante la descripción del número de columnas en la pantalla del teléfono. Los miembros dwDisplayNumRows y dwDisplayNumColumns son cero para un dispositivo telefónico sin una pantalla.

dwNumRingModes

Funcionalidades de anillo del dispositivo telefónico. El teléfono puede sonar con diferentes patrones de anillo dwNumRingModes , identificados como 1, 2, a través de dwNumRingModes menos uno. Si el valor de este miembro es 0, las aplicaciones no tienen control sobre el modo de llamada del teléfono. Si el valor de este miembro es mayor que 0, indica el número de modos de anillo además del silencio admitido por el proveedor de servicios. Un valor de 0 en el parámetro lpdwRingMode de phoneGetRing o el parámetro dwRingMode de phoneSetRing indica silencio (el teléfono no suena o no debe ser rung) y los valores dwRingMode de 1 a dwNumRingModes son modos de anillo válidos para el dispositivo telefónico.

dwNumButtonLamps

Número de botón/lámparas en el dispositivo telefónico que se pueden detectar en TAPI. Los botones o lámparas se identifican por su identificador. Los identificadores válidos de botón o lámpara van de cero a dwNumButtonLamps menos uno. A los botones del teclado '0', a '9', '*' y '#' se les asignan los identificadores de 0 a 12.

dwButtonModesSize

Tamaño de la matriz de modos de botón, en bytes.

dwButtonModesOffset

Desplazamiento desde el principio de esta estructura hasta el campo de tamaño variable que contiene los modos de botón de los botones del teléfono. La matriz se indexa mediante el identificador de botón o lámpara. Esta matriz usa las constantes de PHONEBUTTONMODE_. El tamaño de la matriz se especifica mediante dwButtonModesSize.

dwButtonFunctionsSize

Tamaño del campo de funciones de botón, en bytes.

dwButtonFunctionsOffset

Desplazamiento desde el principio de esta estructura hasta el campo de tamaño variable que contiene las funciones de botón de los botones del teléfono. La matriz se indexa mediante el identificador de botón o lámpara. Esta matriz usa las constantes PHONEBUTTONFUNCTION_. El tamaño de la matriz se especifica mediante dwButtonFunctionsSize.

dwLampModesSize

Tamaño de la matriz de modos de lámpara, en bytes.

dwLampModesOffset

Desplazamiento desde el principio de esta estructura hasta el campo de tamaño variably que contiene los modos de lámpara de las lámparas del teléfono. La matriz se indexa mediante el identificador de botón o lámpara. Esta matriz usa las constantes de PHONELAMPMODE_. DwLampModesSize especifica el tamaño de la matriz.

dwNumSetData

Número de diferentes áreas de descarga en el dispositivo telefónico. Se hace referencia a las distintas áreas con los identificadores de datos 0, 1, , dwNumSetData menos uno. Si este miembro es cero, el teléfono no admite la funcionalidad de descarga.

dwSetDataSize

Tamaño de la matriz de tamaño de datos, en bytes.

dwSetDataOffset

Desplazamiento desde el principio de esta estructura hasta el campo de tamaño variable que contiene los tamaños (en bytes) de las áreas de datos de descarga del teléfono. Se trata de una matriz con elementos de tamaño DWORD indexados por el identificador de datos. DwSetDataSize especifica el tamaño de la matriz.

dwNumGetData

Número de diferentes áreas de carga en el dispositivo telefónico. Se hace referencia a las distintas áreas mediante los identificadores de datos 0, 1, , dwNumGetData menos uno. Si este campo es cero, el teléfono no admite la funcionalidad de carga.

dwGetDataSize

Tamaño de la matriz de tamaño de datos, en bytes.

dwGetDataOffset

Desplazamiento desde el principio de esta estructura hasta el campo de tamaño variable que contiene los tamaños (en bytes) de las áreas de datos de carga del teléfono. Se trata de una matriz con elementos de tamaño DWORD indexados por el identificador de datos. DwGetDataSize especifica el tamaño de la matriz.

dwDevSpecificSize

Tamaño del campo específico del dispositivo, en bytes. Si la información específica del dispositivo es un puntero a una cadena, el tamaño debe incluir el terminador nulo .

dwDevSpecificOffset

Desplazamiento desde el principio de esta estructura hasta el campo específico del dispositivo de tamaño variable. DwDevSpecificSize especifica el tamaño del campo.

dwDeviceClassesSize

Tamaño de los identificadores de clase de dispositivo admitidos, en bytes.

dwDeviceClassesOffset

Desplazamiento desde el principio de esta estructura a una cadena que consta de los identificadores de clase de dispositivo admitidos en este dispositivo para su uso con phoneGetID. Los identificadores están separados por NULLs y el último identificador de la lista va seguido de dos VALORES NULL. DwDeviceClassesSize especifica el tamaño del campo.

dwPhoneFeatures

Marcas que indican qué funciones de API de telefonía se pueden invocar en el teléfono. Un cero indica que la característica correspondiente no se implementa y nunca la puede invocar la aplicación en el teléfono; una indica que la característica se puede invocar en función del estado del dispositivo y de otros factores. Este miembro usa PHONEFEATURE_ Constantes.

dwSettableHandsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que se pueden establecer en el teléfono mediante phoneSetHookSwitch.

dwSettableSpeakerHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que se pueden establecer en el altavoz mediante phoneSetHookSwitch.

dwSettableHeadsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que se pueden establecer en los auriculares mediante phoneSetHookSwitch.

dwMonitoredHandsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que se pueden detectar y notificar para el teléfono en un mensaje de PHONE_STATE y por phoneGetHookSwitch.

dwMonitoredSpeakerHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que se pueden detectar y notificar para el altavoz en un mensaje de PHONE_STATE y por phoneSetHookSwitch.

dwMonitoredHeadsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que se pueden detectar y notificar para los auriculares en un mensaje de PHONE_STATE y por phoneSetHookSwitch.

PermanentPhoneGuid

GUID asociado permanentemente a este teléfono.

Comentarios

Las extensiones específicas del dispositivo deben usar el área de tamaño variable DevSpecific (dwDevSpecificSize y dwDevSpecificOffset) de esta estructura de datos.

Los miembros dwDeviceClassesSize a través de dwMonitoredHeadsetHookSwitchModes solo están disponibles para las aplicaciones que abren el dispositivo telefónico con una versión de API de 2.0 o posterior.

Requisitos

Requisito Valor
Header tapi.h

Consulte también

PHONE_BUTTON

PHONE_CLOSE

PHONE_STATE

TSPI_phoneGetDevCaps

phoneGetDevCaps

phoneGetHookSwitch

phoneGetRing

phoneSetGain

phoneSetHookSwitch

phoneSetRing

phoneSetVolume