Aplicações do Dialplan do Asterisk 22
Descrição:Aguarda até que a expressão avalie como verdadeira, verificando a cada interval segundos, por até timeout segundos. Por padrão, avalia a expressão a cada 50 milissegundos sem tempo limite.
Exemplo: Aguarda até que a variável ou função do dialplan condition se torne 1, por até 40 segundos, verificando a cada 500ms:
same => n,WaitForCondition($,${condition}=1,40,0.5)WAITFORCONDITIONSTATUS
- TRUE - Condição avaliada como verdadeira antes do tempo limite expirar.
- FAILURE - Argumento inválido.
- TIMEOUT - Tempo limite esgotado sem que a condição se tornasse verdadeira.
- HANGUP - Canal desligado antes da condição se tornar verdadeira.
Sintaxe: WaitForCondition(replacementchar,expression,[timeout,[interval]])
- replacementchar - Especifica o caractere na expressão usado para substituir o caractere '$'. Este caractere não deve ser usado em nenhum outro lugar na expressão.
- expression - Uma expressão lógica modificada com os caracteres '$' substituídos por replacementchar. Isso é necessário para passar a própria expressão para o aplicativo, em vez de sua avaliação inicial.
- timeout - O tempo máximo, em segundos, que este aplicativo deve aguardar por uma condição se tornar verdadeira antes que a execução do dialplan continue automaticamente para a próxima prioridade. Por padrão, não há tempo limite.
- interval - A frequência, em segundos, de verificação da condição, que pode ser ajustada dependendo de quão sensível ao tempo a execução precisa ser. Por padrão, é 0.05.