Partilhar via


Inicialização de TAPI do CoNDIS

Esta seção discute como um driver de miniporto da WAN do CoNDIS enumera seus recursos TAPI para aplicativos. Esses recursos TAPI consistem em:

  • Número de dispositivos de linha aos quais o driver de miniporto dá suporte – os dispositivos de linha incluem, por exemplo, um modem, uma placa de fax e uma cartão ISDN.

  • Informações para linhas específicas – as informações de linha incluem, por exemplo, um identificador de linha e o número de endereços de canal (números de telefone) aos quais a linha dá suporte para transmissão simultânea de voz e dados.

  • Informações para endereços de canal específicos em linhas de dispositivos – as informações de endereço incluem, por exemplo, a identidade de um chamador (ID do chamador) e o número de chamadas ativas possíveis.

Para recuperar informações sobre hardware subjacente, o NDPROXY emite solicitações para recursos de linha e endereço de canal. Ou seja, o driver NDPROXY consulta as funcionalidades TAPI de um driver de miniporta wan coNDIS. O driver NDPROXY chama a função NdisCoOidRequest para consultar as funcionalidades TAPI do driver de miniport. Nessa chamada, NDPROXY passa uma estrutura NDIS_OID_REQUEST. NDPROXY especifica o seguinte em NDIS_OID_REQUEST:

  • Valor NdisRequestQueryInformation no membro RequestType

  • OID (identificador de objeto) que especifica a funcionalidade TAPI a ser recuperada do driver de miniport no membro Oid

  • Buffer para armazenar as informações de funcionalidade tapi que são retornadas no membro InformationBuffer

Todas as consultas enviadas a um driver de miniporto wan coNDIS pelo driver NDPROXY podem ser concluídas de forma síncrona ou assíncrona. Se um driver de miniporto de WAN coNDIS determinar que ele não pode concluir a consulta imediatamente, ele poderá simplesmente retornar NDIS_STATUS_PENDING e chamar a função NdisMCmOidRequestComplete de dentro de sua função ProtocolCoOidRequest quando tiver concluído a consulta.

Depois que um driver de miniporto da WAN coNDIS notifica o NDPROXY sobre o registro de uma nova família de endereços, conforme especificado no Registro TAPI do CoNDIS, o NDPROXY consulta os seguintes OIDs para determinar os recursos específicos do TAPI do driver de miniporto da WAN do CoNDIS e da NIC do driver de miniporto.

  • NDPROXY consulta o driver de miniporto com OID_CO_TAPI_CM_CAPS para determinar o número de linhas compatíveis com o dispositivo do driver de miniporto (o dispositivo para o qual ele fornece serviços TAPI). Esse OID também solicita que o driver de miniporto indique se essas linhas têm funcionalidades de linha diferentes.

  • NDPROXY consulta o driver de miniporta com OID_CO_TAPI_LINE_CAPS para determinar os recursos de telefonia para a linha especificada. Esse OID também solicita que o driver de miniporto indique se os endereços nessa linha têm funcionalidades de endereço diferentes.

    • Se a consulta anterior de OID_CO_TAPI_CM_CAPS indicado que o dispositivo do driver de miniporta dá suporte a apenas uma linha ou se o dispositivo dá suporte a várias linhas que têm os mesmos recursos de linha, NDPROXY precisa consultar OID_CO_TAPI_LINE_CAPS apenas uma vez para obter os recursos de linha do dispositivo. Nesse caso, as funcionalidades de linha retornadas pelo driver de miniporta se aplicam a todas as linhas no dispositivo.
    • Se o dispositivo der suporte a várias linhas com recursos de linha diferentes, NDPROXY deverá consultar OID_CO_TAPI_LINE_CAPS uma vez para cada linha obter os recursos de linha de cada linha.
  • Por fim, o NDPROXY consulta o driver de miniporto com OID_CO_TAPI_ADDRESS_CAPS para determinar os recursos de telefonia para um endereço especificado em uma linha especificada.

    • Se a consulta anterior de OID_CO_TAPI_LINE_CAPS indicado que a linha dá suporte a apenas um endereço ou que todos os endereços na linha têm os mesmos recursos de endereço, as consultas NDPROXY OID_CO_TAPI_ADDRESS_CAPS apenas uma vez para determinar os recursos de todos os endereços na linha.
    • Se uma linha der suporte a vários endereços que têm funcionalidades diferentes, as consultas NDPROXY OID_CO_TAPI_ADDRESS_CAPS uma vez para cada endereço na linha.

O driver NDPROXY usa as informações obtidas com os OIDs de enumeração TAPI para fazer o seguinte:

  • Crie parâmetros TAPI para chamadas TAPI subsequentes.

  • Determine se as chamadas TAPI subsequentes devem ser aceitas ou rejeitadas.

  • Registre um ou mais SAPs (pontos de acesso de serviço) TAPI nos quais receber chamadas TAPI de entrada subsequentes.