Función NdisCmDispatchIncomingCall (ndis.h)

NdisCmDispatchIncomingCall informa al cliente de una llamada entrante en un SAP registrado previamente por ese cliente.

Sintaxis

NDIS_STATUS NdisCmDispatchIncomingCall(
  [in] NDIS_HANDLE         NdisSapHandle,
  [in] NDIS_HANDLE         NdisVcHandle,
  [in] PCO_CALL_PARAMETERS CallParameters
);

Parámetros

[in] NdisSapHandle

Especifica el identificador que identifica sap. NDIS configuró este identificador cuando el cliente llamó originalmente a NdisClRegisterSap y el administrador de llamadas obtuvo originalmente este identificador como parámetro de entrada a su Función ProtocolCmRegisterSap .

[in] NdisVcHandle

Especifica el identificador que identifica el VC, creado con NdisCoCreateVc cuando el administrador de llamadas procesa la oferta de llamada entrante dirigida a este SAP registrado.

[in] CallParameters

Puntero a una estructura de tipo CO_CALL_PARAMETERS que especifica el tráfico y los parámetros multimedia para la vc.

Valor devuelto

Cuando NdisCmDispatchIncomingCall devuelve algo distinto de NDIS_STATUS_PENDING, el administrador de llamadas debe realizar una llamada interna a su Función ProtocolCmIncomingCallComplete . De lo contrario, NDIS llama a la función ProtocolCmIncomingCallComplete de CM cuando se completa esta operación.

Comentarios

Antes de llamar a NdisCmDispatchIncomingCall, un administrador de llamadas independiente ya ha hecho lo siguiente:

  • Se identificó el SAP de destino, registrado previamente por un cliente determinado, para la llamada (en realidad, una solicitud para realizar una conexión) que recibió a través de la red.
  • Se ha creado una credencial verificable para la llamada entrante con NdisCoCreateVc
  • Posiblemente negociados sobre los parámetros de llamada aceptables a través de la red, o aceptaron los parámetros de llamada enviados desde el nodo remoto
  • Ha activado el VC con NdisCmActivateVc, lo que hace que el controlador de miniporte subyacente esté listo para las transferencias en el VC de acuerdo con los parámetros de llamada negociados o aceptados.
La llamada de CM a NdisCmDispatchIncomingCall hace que NDIS llame a la función ProtocolClIncomingCall del cliente, dentro de la cual el cliente acepta o rechaza la conexión solicitada. Después de decidir si aceptar la conexión, el cliente llama a NdisClIncomingCallComplete, que, a su vez, llama al CM. Función ProtocolCmIncomingCallComplete . Si el cliente aceptó la llamada, cm llama a NdisCmDispatchCallConnected. De lo contrario, desactiva (y posiblemente elimina) el VC que creó, después de notificar al nodo remoto que se rechazó la llamada ofrecida.

Solo los administradores de llamadas independientes, que se registran con NDIS como controladores de protocolo, pueden llamar a NdisCmDispatchIncomingCall. Los controladores de minipuerto orientados a la conexión que proporcionan compatibilidad integrada con la administración de llamadas llaman a NdisMCmDispatchIncomingCall en su lugar.

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisCmDispatchIncomingCall (NDIS 5.1)) en Windows Vista. Compatible con controladores NDIS 5.1 (consulte NdisCmDispatchIncomingCall (NDIS 5.1)) en Windows XP.
Plataforma de destino Escritorio
Encabezado ndis.h (incluya Ndis.h)
Library Ndis.lib
IRQL <= DISPATCH_LEVEL
Reglas de cumplimiento de DDI Irql_CallManager_Function(ndis)

Consulte también

CO_CALL_PARAMETERS

NdisClIncomingCallComplete

NdisClRegisterSap

NdisCmActivateVc

NdisCmDeactivateVc

NdisCmDispatchCallConnected

NdisCoCreateVc

NdisCoDeleteVc

NdisCoSendNetBufferLists

NdisMCmDispatchIncomingCall

ProtocolClIncomingCall

ProtocolCmIncomingCallComplete

ProtocolCmRegisterSap

ProtocolCoReceiveNetBufferLists