Partilhar via


Remover um participante de uma chamada multiponto

Um cliente orientado à conexão que atua como o ponto de origem de uma chamada multiponto deve, eventualmente, remover cada parte dessa chamada com NdisClDropParty ou NdisClCloseCall.

Um cliente remove uma parte de uma chamada numa das seguintes situações:

A chamada de um cliente para NdisClDropParty faz com que o NDIS chame a função ProtocolCmDropParty do gestor de chamadas ou controlador MCM que partilha o mesmo NdisVcHandle para a VC multiponto.

A figura a seguir mostra o cliente de um gestor de chamadas a solicitar a remoção de um participante de uma chamada multiponto.

Diagrama que mostra o cliente de um gestor de chamadas a solicitar a remoção de um participante de uma chamada multiponto.

A figura a seguir mostra o cliente de um driver MCM solicitando que seja removido um participante de uma chamada multiponto.

Diagrama mostrando o cliente de um driver MCM a solicitar a remoção de uma parte de uma chamada multiponto.

ProtocolCmDropParty comunica-se com dispositivos de controlo de rede para remover uma parte de uma chamada multiponto existente. O NDIS pode passar para ProtocolCmDropParty um ponteiro para um buffer que contém dados (fornecido ao cliente na chamada para NdisClDropParty). ProtocolCmDropParty deve enviar esses dados pela rede antes que a conexão seja interrompida.

ProtocolCmDropParty pode ser concluído de forma síncrona ou, mais provavelmente, de forma assíncrona com NdisCmDropPartyComplete, no caso de um gestor de chamadas, ou NdisMCmDropPartyComplete, no caso de um driver MCM.

A chamada para Ndis(M)CmDropPartyComplete faz com que o NDIS chame a função do cliente ProtocolClDropPartyComplete. Se o cliente estiver no processo de desmantelar um VC multiponto que ele criou, ProtocolClDropPartyComplete pode chamar NdisClDropParty com qualquer NdisPartyHandle válido para as partes restantes do VC multiponto ativo do cliente. Se apenas uma das partes continuar no multiponto VC, o cliente deve remover essa entidade, passando o valor do seu atributo NdisPartyHandle para NdisClCloseCall (consulte Client-Initiated Request to Close a Call).