Estrutura PHONECAPS (tapi.h)

A estrutura PHONECAPS descreve os recursos de um dispositivo de telefone. As funções phoneGetDevCaps e TSPI_phoneGetDevCaps retornam essa estrutura.

Sintaxe

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;

Membros

dwTotalSize

Tamanho total alocado para essa estrutura de dados, em bytes.

dwNeededSize

Tamanho para essa estrutura de dados necessária para armazenar todas as informações retornadas, em bytes.

dwUsedSize

Tamanho da parte dessa estrutura de dados que contém informações úteis, em bytes.

dwProviderInfoSize

Tamanho das informações específicas do provedor, em bytes. Se as informações específicas do provedor forem um ponteiro para uma cadeia de caracteres, o tamanho deverá incluir o terminador nulo .

dwProviderInfoOffset

Deslocamento do início da estrutura para o campo de tamanho variável que contém informações específicas do provedor de serviços.

Esse membro fornece informações sobre o hardware e/ou software do provedor, como o nome do fornecedor e os números de versão de hardware e software. Essas informações podem ser úteis quando um usuário precisa chamar o atendimento ao cliente com problemas relacionados ao provedor. O tamanho do campo é especificado por dwProviderInfoSize.

dwPhoneInfoSize

Tamanho das informações específicas do telefone, em bytes. Se as informações específicas do telefone forem um ponteiro para uma cadeia de caracteres, o tamanho deverá incluir o terminador nulo .

dwPhoneInfoOffset

Deslocamento do início da estrutura para o campo de dispositivo de tamanho variável que contém informações específicas do telefone.

Esse membro fornece informações sobre o dispositivo de telefone anexado, como o fabricante do dispositivo de telefone, o nome do modelo, a versão do software e assim por diante. Essas informações podem ser úteis quando um usuário precisa ligar para o atendimento ao cliente com problemas relacionados ao telefone. O tamanho do campo é especificado por dwPhoneInfoSize.

dwPermanentPhoneID

Identificador permanente pelo qual o dispositivo de telefone é conhecido na configuração do sistema.

dwPhoneNameSize

Tamanho do nome configurável para o telefone, incluindo o terminador nulo , em bytes.

dwPhoneNameOffset

Deslocamento do início da estrutura para o campo de dispositivo de tamanho variável que contém um nome configurável pelo usuário para este dispositivo de telefone. Esse nome pode ser configurado pelo usuário ao configurar o provedor de serviços do dispositivo de telefone e é fornecido para a conveniência do usuário. O tamanho do campo é especificado por dwPhoneNameSize.

dwStringFormat

Formato de cadeia de caracteres a ser usado com este dispositivo de telefone. Esse membro usa uma das constantes STRINGFORMAT_.

dwPhoneStates

Alterações de estado para este dispositivo de telefone para o qual o aplicativo pode ser notificado em uma mensagem de PHONE_STATE . Este membro é uma ou mais das constantes PHONESTATE_.

dwHookSwitchDevs

Dispositivos hookswitch do telefone. Esse membro usa uma das constantes PHONEHOOKSWITCHDEV_.

dwHandsetHookSwitchModes

Modo hookswitch do aparelho. O membro só será significativo se o dispositivo hookswitch estiver listado em dwHookSwitchDevs. Ele usa uma das constantes PHONEHOOKSWITCHMODE_.

dwSpeakerHookSwitchModes

Modo Hookswitch do alto-falante. O membro só será significativo se o dispositivo hookswitch estiver listado em dwHookSwitchDevs. Ele usa uma das constantes PHONEHOOKSWITCHMODE_.

dwHeadsetHookSwitchModes

Modo hookswitch do headset. O membro só será significativo se o dispositivo hookswitch estiver listado em dwHookSwitchDevs. Ele usa uma das constantes PHONEHOOKSWITCHMODE_.

dwVolumeFlags

Funcionalidades de configuração de volume dos componentes do alto-falante do dispositivo de telefone. Se o bit na posição PHONEHOOKSWITCHDEV_ for TRUE, o volume do componente do alto-falante do dispositivo hookswitch correspondente poderá ser ajustado com phoneSetVolume.

dwGainFlags

Funcionalidades de configuração de ganho dos componentes de microfone do dispositivo de telefone. Se a posição do bit PHONEHOOKSWITCHDEV_ for TRUE, o volume do componente de microfone do dispositivo hookswitch correspondente poderá ser ajustado com phoneSetGain.

dwDisplayNumRows

Exibir funcionalidades do dispositivo de telefone descrevendo o número de linhas na tela do telefone. Os membros dwDisplayNumRows e dwDisplayNumColumns são zero para um dispositivo de telefone sem exibição.

dwDisplayNumColumns

Exiba os recursos do dispositivo de telefone descrevendo o número de colunas na tela do telefone. Os membros dwDisplayNumRows e dwDisplayNumColumns são zero para um dispositivo de telefone sem exibição.

dwNumRingModes

Funcionalidades de toque do dispositivo de telefone. O telefone é capaz de tocar com padrões de anel diferentes dwNumRingModes , identificados como 1, 2, por meio de dwNumRingModes menos um. Se o valor desse membro for 0, os aplicativos não terão controle sobre o modo de toque do telefone. Se o valor desse membro for maior que 0, ele indicará o número de modos de anel, além do silêncio com suporte do provedor de serviços. Um valor de 0 no parâmetro lpdwRingMode de phoneGetRing ou o parâmetro dwRingMode de phoneSetRing indica silêncio (o telefone não está tocando ou não deve ser tocado) e os valores dwRingMode de 1 a dwNumRingModes são modos de toque válidos para o dispositivo de telefone.

dwNumButtonLamps

Número de botões/lâmpadas no dispositivo de telefone detectáveis no TAPI. Botões/lâmpadas são identificados pelo identificador. Identificadores de botão/lâmpada válidos variam de zero a dwNumButtonLamps menos um. Os botões do teclado '0', até '9', '*' e '#' recebem os identificadores de 0 a 12.

dwButtonModesSize

Tamanho da matriz de modos de botão, em bytes.

dwButtonModesOffset

Deslocamento do início dessa estrutura para o campo de tamanho variável que contém os modos de botão dos botões do telefone. A matriz é indexada por identificador de botão/lâmpada. Essa matriz usa as constantes PHONEBUTTONMODE_. O tamanho da matriz é especificado por dwButtonModesSize.

dwButtonFunctionsSize

Tamanho do campo de funções de botão, em bytes.

dwButtonFunctionsOffset

Deslocamento do início dessa estrutura para o campo de tamanho variável que contém as funções de botão dos botões do telefone. A matriz é indexada por identificador de botão/lâmpada. Essa matriz usa as constantes PHONEBUTTONFUNCTION_. O tamanho da matriz é especificado por dwButtonFunctionsSize.

dwLampModesSize

Tamanho da matriz de modos de lâmpada, em bytes.

dwLampModesOffset

Deslocamento do início dessa estrutura para o campo de tamanho variável que contém os modos de lâmpada das lâmpadas do telefone. A matriz é indexada por identificador de botão/lâmpada. Essa matriz usa as constantes PHONELAMPMODE_. O tamanho da matriz é especificado por dwLampModesSize.

dwNumSetData

Número de diferentes áreas de download no dispositivo de telefone. As diferentes áreas são referidas usando as IDs de dados 0, 1, , dwNumSetData menos uma. Se esse membro for zero, o telefone não oferecerá suporte ao recurso de download.

dwSetDataSize

Tamanho da matriz de tamanho de dados, em bytes.

dwSetDataOffset

Deslocamento do início dessa estrutura para o campo de tamanho variável que contém os tamanhos (em bytes) das áreas de dados de download do telefone. Essa é uma matriz com elementos do tamanho DWORD indexados pelo identificador de dados. O tamanho da matriz é especificado por dwSetDataSize.

dwNumGetData

Número de diferentes áreas de carregamento no dispositivo de telefone. As diferentes áreas são referidas usando as IDs de dados 0, 1, , dwNumGetData menos uma. Se esse campo for zero, o telefone não oferecerá suporte à funcionalidade de upload.

dwGetDataSize

Tamanho da matriz de tamanho de dados, em bytes.

dwGetDataOffset

Deslocamento do início dessa estrutura para o campo de tamanho variável que contém os tamanhos (em bytes) das áreas de dados de upload do telefone. Essa é uma matriz com elementos do tamanho DWORD indexados pelo identificador de dados. O tamanho da matriz é especificado por dwGetDataSize.

dwDevSpecificSize

Tamanho do campo específico do dispositivo, em bytes. Se as informações específicas do dispositivo forem um ponteiro para uma cadeia de caracteres, o tamanho deverá incluir o terminador nulo .

dwDevSpecificOffset

Deslocamento do início dessa estrutura para o campo específico do dispositivo de tamanho variável. O tamanho do campo é especificado por dwDevSpecificSize.

dwDeviceClassesSize

Tamanho dos identificadores de classe de dispositivo com suporte, em bytes.

dwDeviceClassesOffset

Deslocamento do início dessa estrutura para uma cadeia de caracteres que consiste nos identificadores de classe de dispositivo com suporte neste dispositivo para uso com phoneGetID. Os identificadores são separados por NULLs e o último identificador na lista é seguido por dois NULLs. O tamanho do campo é especificado por dwDeviceClassesSize.

dwPhoneFeatures

Sinalizadores que indicam quais funções da API de Telefonia podem ser invocadas no telefone. Um zero indica que o recurso correspondente não está implementado e nunca pode ser invocado pelo aplicativo no telefone; um indica que o recurso pode ser invocado dependendo do estado do dispositivo e de outros fatores. Esse membro usa constantes PHONEFEATURE_.

dwSettableHandsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que podem ser definidos no aparelho usando phoneSetHookSwitch.

dwSettableSpeakerHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que podem ser definidos no viva-voz usando phoneSetHookSwitch.

dwSettableHeadsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que podem ser definidos no headset usando phoneSetHookSwitch.

dwMonitoredHandsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que podem ser detectados e relatados para o aparelho em uma mensagem PHONE_STATE e por phoneGetHookSwitch.

dwMonitoredSpeakerHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que podem ser detectados e relatados para o viva-voz em uma mensagem PHONE_STATE e por phoneSetHookSwitch.

dwMonitoredHeadsetHookSwitchModes

PHONEHOOKSWITCHMODE_ valores que podem ser detectados e relatados para o fone de ouvido em uma mensagem PHONE_STATE e por phoneSetHookSwitch.

PermanentPhoneGuid

O GUID permanentemente associado a este telefone.

Comentários

As extensões específicas do dispositivo devem usar a área de tamanho variável DevSpecific (dwDevSpecificSize e dwDevSpecificOffset) dessa estrutura de dados.

Os membros dwDeviceClassesSize por meio de dwMonitoredHeadsetHookSwitchModes estão disponíveis apenas para aplicativos que abrem o dispositivo de telefone com uma versão de API 2.0 ou posterior.

Requisitos

Requisito Valor
Cabeçalho tapi.h

Confira também

PHONE_BUTTON

PHONE_CLOSE

PHONE_STATE

TSPI_phoneGetDevCaps

Phonegetdevcaps

phoneGetHookSwitch

phoneGetRing

phoneSetGain

phoneSetHookSwitch

phoneSetRing

phoneSetVolume