Quitar una entidad de una llamada de varios puntos
Un cliente orientado a la conexión que actúa como raíz de una llamada de varios puntos debe quitar finalmente a cada parte de esa llamada con NdisClDropParty o NdisClCloseCall.
Un cliente quita una parte de una llamada en las situaciones siguientes:
Antes de iniciar el desmontaje de una llamada de varios puntos con NdisClCloseCall(consulte Solicitud iniciada por el cliente para cerrar una llamada), un cliente debe quitar todas las llamadas a NdisClDropParty, pero la última entidad con llamadas sucesivas a NdisClDropParty. El cliente especifica la última parte que se va a quitar de la llamada con NdisClCloseCall.
En respuesta a la solicitud de una entidad remota que se va a quitar de una llamada de varios puntos (consulte Solicitud entrante para quitar una entidad de una llamada multipunto), un cliente, desde su función ProtocolClIncomingDropParty , llama a NdisClDropParty.
La llamada de un cliente a NdisClDropParty hace que NDIS llame a la función ProtocolCmDropParty del administrador de llamadas o del controlador MCM que comparte el mismo NdisVcHandle con la vc de varios puntos.
En la ilustración siguiente se muestra el cliente de un administrador de llamadas que solicita quitar una entidad de una llamada de varios puntos.
En la ilustración siguiente se muestra el cliente de un controlador MCM que solicita quitar una entidad de una llamada de varios puntos.
ProtocolCmDropParty se comunica con dispositivos de control de red para quitar una entidad de una llamada de varios puntos existente. NDIS puede pasar a ProtocolCmDropParty un puntero a un búfer que contiene datos (proporcionados al cliente en la llamada a NdisClDropParty). ProtocolCmDropParty debe enviar estos datos a través de la red antes de que se quite la conexión.
ProtocolCmDropParty puede completarse de forma sincrónica, o más probablemente, de forma asincrónica con NdisCmDropPartyComplete, en el caso de un administrador de llamadas o NdisMCmDropPartyComplete, en el caso de un controlador MCM.
La llamada a Ndis(M)CmDropPartyComplete hace que NDIS llame a la función ProtocolClDropPartyComplete del cliente. Si el cliente está en proceso de desmontar un VC de varios puntos que creó, ProtocolClDropPartyComplete puede llamar a NdisClDropParty con cualquier NdisPartyHandle válido a una de las partes restantes de la vc multipoint activa del cliente. Si solo una entidad permanece en su VC de varios puntos, el cliente debe quitar esa entidad pasando su NdisPartyHandle a NdisClCloseCall(consulte Solicitud iniciada por el cliente para cerrar una llamada).