Função lineDrop (tapi.h)
A função lineDrop descarta ou desconecta a chamada especificada. O aplicativo tem a opção de especificar informações de usuário-usuário a serem transmitidas como parte da desconexão da chamada.
Sintaxe
LONG lineDrop(
HCALL hCall,
LPCSTR lpsUserUserInfo,
DWORD dwSize
);
Parâmetros
hCall
Identificador para a chamada a ser descartada. O aplicativo deve ser um proprietário da chamada. O estado de chamada de hCall pode ser qualquer estado, exceto ocioso.
lpsUserUserInfo
Ponteiro para uma cadeia de caracteres que contém informações de usuário-usuário a serem enviadas para a parte remota como parte da desconexão da chamada. Esse ponteiro poderá ser deixado NULL se nenhuma informação de usuário deve ser enviada. As informações do usuário são enviadas somente se houver suporte da rede subjacente (consulte LINEDEVCAPS). O campo discriminador de protocolo para as informações do usuário-usuário, se necessário, deve aparecer como o primeiro byte do buffer apontado por lpsUserUserInfo e deve ser contabilizado no dwSize.
dwSize
Tamanho das informações de usuário-usuário em lpsUserUserInfo, em bytes. Se lpsUserUserInfo for NULL, nenhuma informação de usuário será enviada para a parte de chamada e dwSize será ignorada.
Retornar valor
Retorna um identificador de solicitação positivo se a função for concluída de forma assíncrona ou um número de erro negativo se ocorrer um erro. O parâmetro dwParam2 da mensagem de LINE_REPLY correspondente será zero se a função for bem-sucedida ou se for um número de erro negativo se ocorrer um erro. Os valores retornados possíveis são:
LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL, LINEERR_NOMEM, LINEERR_OPERATIONFAILED, LINEERR_NOTOWNER, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_USERUSERINFOTOOBIG, LINEERR_INVALCALLSTATE, LINEERR_UNINITIALIZED.
Comentários
Ao invocar lineDrop, as chamadas relacionadas às vezes também podem ser afetadas. Por exemplo, descartar uma chamada em conferência pode remover todas as chamadas participantes individuais. LINE_CALLSTATE mensagens são enviadas ao aplicativo para todas as chamadas cujo estado de chamada é afetado. Uma chamada descartada normalmente faz a transição para o estado ocioso . Invocar lineDrop em uma chamada no estado de oferta rejeita a chamada. Nem todas as redes telefônicas fornecem essa funcionalidade.
Uma chamada no estado onholdpending normalmente é revertida para o estado conectado . Ao cancelar a chamada de consulta para terceiros para uma chamada em conferência ou ao remover o terceiro em uma teleconferência estabelecida anteriormente, o provedor (e alternar) pode liberar a ponte de conferência e reverter a chamada de volta para uma chamada normal de duas partes. Se esse for o caso, hConfCall fará a transição para o estado ocioso e a única chamada participante restante fará a transição para o estado conectado . Algumas opções "desvinculam" automaticamente a outra chamada.
O aplicativo tem a opção de enviar informações de usuário-usuário no momento da remoção. Mesmo que as informações do usuário-usuário possam ser enviadas, não há nenhuma garantia de que a rede fornecerá essas informações à parte remota.
Em várias configurações de ponte ou de linha partidária quando várias partes estão na chamada, lineDrop pode não limpar a chamada. Por exemplo, em uma situação de ponte, uma operação lineDrop pode não descartar a chamada porque o status de outras estações na chamada pode controlar; em vez disso, a chamada pode simplesmente ser alterada para o modo de LINECONNECTEDMODE_INACTIVE se ela permanecer conectada em outras estações.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | tapi.h |
Biblioteca | Tapi32.lib |
DLL | Tapi32.dll |
Confira também
Funções de serviço de linha suplementar