Notificação de eventos
A notificação de eventos é o principal meio pelo qual um aplicativo obtém informações do TAPI e dos provedores de serviços. Essas informações podem ser o status de uma operação assíncrona instigada pelo aplicativo ou podem se preocupar com um processo iniciado fora do aplicativo, como notificações de novas chamadas de entrada.
TAPI 2.x: Os aplicativos lidam com a notificação de uma das três maneiras: Janela Oculta, Identificador de Evento ou Porta de Conclusão. Para obter informações adicionais sobre esses mecanismos de notificação, consulte a seção Comentários para lineInitializeEx. Um aplicativo especifica o mecanismo definindo o membro dwOptions da estrutura LINEINITIALIZEEXPARAMS antes de chamar lineInitializeEx.
A função lineSetStatusMessages permite que um aplicativo especifique quais mensagens de notificação receber para eventos relacionados a status alterações para a linha especificada ou qualquer um de seus endereços.
TAPI 3.x: Os aplicativos lidam com a notificação geral usando objetos conectáveis padrão COM. ITTAPIEventNotification é a interface de saída que deve ser registrada com o objeto de contêiner do TAPI e ITTAPIEventNotification::Event é o método que o TAPI chama para determinar a resposta do aplicativo. O método ITTAPI::p ut_EventFilter informa ao TAPI quais eventos são de interesse do aplicativo. Se um filtro de evento não for inserido, o aplicativo não receberá notificação de nenhum evento. O método ITTAPI::RegisterCallNotifications informa ao TAPI os tipos de mídia e endereços para os quais o aplicativo manipulará as sessões de entrada. Para obter informações adicionais sobre a manipulação de eventos tapi 3, consulte a Visão geral de eventos ou o exemplo de código Registrar Eventos .
Os provedores de serviços de telefonia implementam TSPI_lineSetDefaultMediaDetection e TSPI_lineSetStatusMessages. O TAPI chama essas funções para indicar o conjunto de todos os eventos de linha, endereço e tipo de mídia solicitados por aplicativos.