Estrutura Básica de Funcionamento
Início  Anterior  Próximo



O componente VoicerLib é baseado na estrutura de um looping infinito, que fica monitorando os eventos que acontecem no hardware (ring, tons, etc...) e recebendo e passando os comandos gerados a partir da aplicação (propriedades e métodos).

Devido a esta característica, a maioria das funções da biblioteca são assíncronas. Isto significa que ao executar a chamada a um determinado método, o programa seguirá seu fluxo normal. As respostas aos métodos são manipuladas através de eventos específicos relativos a cada acontecimento.

Por exemplo, quando o método GetDigits é chamado, o programa continua normalmente e só após os dígitos serem recebidos (ou der time-out) que a resposta ao GetDigits será tratada dentro do evento OnDigitsReceived  
 
Este tipo de funcionamento é muito importante pois a biblioteca tem que gerenciar vários canais simultaneamente.

Se a aplicação ficasse presa na execução de um método, não conseguiria tratar os outros eventos dos outros canais. Lembre-se que é possível que um canal esteja reproduzindo a mensagem enquanto outro esteja recebendo um ring.
 
Como esta forma de programar é um pouco diferente da que a maioria dos programadores sem experiência em aplicações de telefônia em tempo real estão acostumados, recomenda-se ler todo este capítulo: Aplicação Exemplo Passo a Passo e estudar os exemplos fornecidos.