Partilhar via


Registrando um SAP

Se um cliente aceita chamadas de entrada, a sua função ProtocolClOpenAfCompleteEx geralmente regista um ou mais SAPs com o gestor de chamadas chamando NdisClRegisterSap.

A figura a seguir mostra um cliente de um gerenciador de chamadas registrando um SAP.

Diagrama que ilustra um cliente de um gestor de chamadas a registar um SAP.

A figura a seguir mostra um cliente de um driver MCM registrando um SAP.

Diagrama que mostra um cliente de um driver MCM a registar um SAP.

Com a chamada para NdisClRegisterSap, um cliente solicita notificações de chamadas recebidas em um SAP específico. O NDIS encaminha as informações SAP fornecidas pelo cliente para a função do gestor de chamadas ou do controlador MCM ProtocolCmRegisterSap para validação. Se o SAP fornecido já estiver em uso ou se o gerenciador de chamadas ou o driver MCM não reconhecer a especificação SAP fornecida pelo cliente, o gerenciador de chamadas ou o driver MCM falhará nessa solicitação.

No ProtocolCmRegisterSap, o gerenciador de chamadas ou o driver MCM pode se comunicar com dispositivos de controle de rede ou outros agentes específicos de mídia para registrar o SAP na rede para um cliente orientado à conexão. ProtocolCmRegisterSap também armazena um NdisSapHandle fornecido pelo NDIS, que representa o SAP.

ProtocolCmRegisterSap pode ser concluído de forma síncrona ou assíncrona. Para concluir de forma assíncrona, a função ProtocolCmRegisterSap de um gerenciador de chamadas chama NdisCmRegisterSapComplete. A função ProtocolCmRegisterSap de um driver MCM chama NdisMCmRegisterSapComplete. A chamada para Ndis(M)CmRegisterSapComplete faz com que o NDIS chame a função ProtocolClRegisterSapComplete do cliente.

Se a chamada do cliente para NdisClRegisterSap for bem-sucedida, o NDIS retornará ao cliente um NdisSapHandle que representa o SAP.

Depois que um gestor de chamadas regista um SAP em nome de um cliente orientado à ligação, ele notifica esse cliente de uma oferta de chamada de entrada direcionada a esse SAP, ao chamar NdisCmDispatchIncomingCall. Um driver MCM chama NdisMCmDispatchIncomingCall(ver Indicando uma chamada de entrada). Um cliente pode receber chamadas num SAP mesmo enquanto o registo SAP ainda está pendente; isto é, antes de a sua função ProtocolClRegisterSapComplete ser chamada.