Aplicativos de plano de discagem do Asterisk 16
Comando:
AGI()
Sinopse:
Executa um aplicativo compatível com AGI.
Descrição:
Executa um programa compatível com Asterisk Gateway Interface em um canal. O AGI permite que o Asterisk inicie programas externos escritos em qualquer idioma para controlar um canal de telefonia, reproduza áudio, leia dígitos DTMF, etc., comunicando-se com o protocolo AGI. As seguintes variantes do AGI existem e são escolhidas com base no valor passado ao comando :
AGI - A variante clássica do AGI, isso iniciará o script especificado pelo comando como um novo processo. A comunicação com o script ocorre em stdin e stdout. Se o caminho completo para o script não for fornecido, o astagidir especificado em asterisk.conf será usado.
FastAGI - Conecte o Asterisk a um servidor FastAGI usando uma conexão TCP. O URI para o servidor FastAGI deve ser fornecido no formato [esquema]: //host.domain [: porta] [/ script / nome], em que o esquema é agi ou hagi.
No caso de hagi, uma pesquisa SRV será executada para tentar conectar-se a uma lista de servidores FastAGI. O nome do host no URI deve ser prefixado com _agi._tcp. antes da resolução do DNS. Por exemplo, se você especificar o URI hagi: //agi.example.com/foo.agi, a consulta DNS seria para _agi._tcp.agi.example.com. Você precisará garantir que isso seja resolvido corretamente.
AsyncAGI - Use a AMI para controlar o canal na AGI. Os comandos AGI podem ser chamados usando a ação AMI, com uma variedade de eventos específicos da AGI transmitidos de volta pela conexão AMI. AsyncAGI deve ser chamado passando agi: async para o parâmetro de comando.
Nota
Ícone
A partir da versão 1.6.0, este canal não interromperá a execução do plano de discagem no hangup dentro deste aplicativo. A execução do plano de discagem continuará normalmente, mesmo após o desligamento, até que o aplicativo AGI sinalize o desejo de parar (saindo ou, no caso de um script de rede, fechando a conexão).
Um script AGI executado localmente receberá SIGHUP no hangup a partir do canal, exceto ao usar DeadAGI (ou quando o canal já estiver hungup). Um servidor AGI rápido receberá correspondentemente um HANGUP em linha com a caixa de diálogo de comando. Ambos os sinais podem ser desativados configurando a variável de canal AGISIGHUP como no antes de executar o aplicativo AGI. Como alternativa, se você deseja que o aplicativo AGI saia imediatamente após a detecção de um desligamento de canal, defina a variável AGIEXITONHANGUP como yes.
Exemplo: exemplos de chamada AGI
Este aplicativo define a seguinte variável de canal após a conclusão:
AGISTATUS - O status da tentativa de executar a sequência de texto do script AGI, um dos seguintes:
SUCESSO
FRACASSO
NÃO ENCONTRADO
DESLIGAR
Sintaxe:
AGI(command,arg1,[arg2[,...]])
Argumentos:
command - Como o AGI deve ser chamado no canal.
args - Argumentos a serem transmitidos para o script ou servidor AGI.
Veja Também:
Fonte: Asterisk Wiki