Aplicativos de plano de discagem do Asterisk 11
Comando:
WaitForSilence()
Sinopse:
Aguarda uma quantidade especificada de silêncio.
Descrição:
Aguarda até silenciar milissegundos de silêncio necessários, tempos de iterações. Um tempo limite opcional especificou o número de segundos para retornar depois, mesmo se não recebermos a quantidade especificada de silêncio. Use o tempo limite com cuidado, pois isso pode anular o objetivo deste aplicativo, que é esperar indefinidamente até que o silêncio seja detectado na linha. Isso é particularmente útil para aplicativos de transmissão de chamada do tipo reverso 911, nos quais é necessário aguardar que uma secretária eletrônica complete sua fala antes de reproduzir uma mensagem. Normalmente, você deseja incluir duas ou mais chamadas para o WaitForSilence ao lidar com uma secretária eletrônica; primeiro esperando o jogo terminar, depois esperando o sinal sonoro, etc. Exemplos: WaitForSilence (500,2) aguardará 1/2 segundo de silêncio, duas vezesWaitForSilence (1000) aguardará 1 segundo de silêncio, uma vezWaitForSilence (300, 3,10) aguardará 300ms de silêncio, 3 vezes, e retornará após 10 s, mesmo que o silêncio não seja detectado. Define a variável de canal WAITSTATUS para um destes valores:
WAITSTATUS
SILÊNCIO - se encerrado com o silêncio detectado.
TIMEOUT - se encerrado sem que o silêncio seja detectado após o tempo limite.
Sintaxe:
WaitForSilence(silencerequired,[iterations,[timeout]])
Argumentos:
iterations - Se não especificado, o padrão é 1.
timeout - É especificado apenas para evitar um loop infinito nos casos em que o silêncio nunca é alcançado.
Veja Também:
Fonte: Asterisk Wiki