No universo da telefonia IP, o Asterisk é uma plataforma extremamente versátil e poderosa, e boa parte dessa flexibilidade vem das interfaces que ele oferece para integração com sistemas externos. Neste artigo, vamos explorar três dessas interfaces: AMI (Asterisk Manager Interface), AGI (Asterisk Gateway Interface) e ARI (Asterisk REST Interface). Esses recursos permitem que desenvolvedores criem desde simples monitoramentos até aplicações complexas e totalmente integradas ao fluxo das chamadas.
O AMI é uma interface baseada em socket TCP (porta 5038) que permite enviar comandos e receber eventos diretamente do Asterisk. Através dessa interface, é possível monitorar o status dos ramais, chamadas e filas em tempo real. Por exemplo, sempre que um ramal muda de estado ou uma ligação entra na central, o AMI emite um evento que pode ser capturado e tratado por uma aplicação externa.
Com o AMI, é possível:
Iniciar chamadas remotamente;
Pausar ou remover agentes de filas;
Monitorar o fluxo de chamadas em tempo real.
Ele é bastante utilizado em dashboards e ferramentas como o FOP2, permitindo controle parcial, porém muito útil, do sistema telefônico.
Já o AGI permite que você integre scripts externos ao fluxo de chamadas do Asterisk. Isso significa que, durante uma chamada, o dialplan pode "entregar" o controle para um script (em Python, PHP, JavaScript etc.), que poderá executar lógica de negócio, acessar bancos de dados, consumir APIs e retornar o controle para o Asterisk após o processamento.
Essa abordagem é muito comum em URAs (Unidades de Resposta Audível), onde o usuário interage com menus e suas escolhas são processadas por lógica personalizada externa.
O ARI é a interface mais moderna e poderosa, introduzida no Asterisk 12. Ela expõe uma API RESTful e utiliza WebSockets para eventos em tempo real. Com ARI, desenvolvedores têm controle total sobre os canais, pontes, reproduções de áudio, entre outros.
Isso torna o ARI ideal para desenvolver aplicações complexas como discadores automáticos, conferências personalizadas e sistemas de call center altamente customizados.
O diferencial do ARI é que ele não depende diretamente do dialplan: a lógica da chamada é controlada 100% via aplicação externa, o que dá liberdade total ao desenvolvedor, mas também exige mais conhecimento técnico.
Interface | Comunicação | Controle | Uso Ideal |
---|---|---|---|
AMI | Texto via TCP | Parcial | Dashboards, monitoramento, FOP2 |
AGI | STDIN/STDOUT | Médio | URAs, lógica externa simples |
ARI | REST + WebSocket | Total | Discadores, apps de alto controle |
Para ver o passo a passo completo de configuração e exemplos práticos utilizando AMI, AGI e ARI, acesse nosso vídeo no canal do YouTube. Nele, mostramos desde como habilitar as interfaces no Asterisk até a execução de um script em Python via AGI e conexão via Telnet com o AMI. Ideal para quem está começando e quer ver tudo funcionando na prática!
O Asterisk é uma poderosa ferramenta de código aberto para construção de soluções de telefonia, e ao longo dos nossos vídeos já mostramos como...
À medida que a tecnologia evolui e a comunicação digital se torna cada vez mais integrada, soluções como o Asterisk ganham destaque no universo das...
A China deu um passo significativo rumo ao futuro da conectividade ao lançar a primeira rede comercial de internet 10G do mundo. O marco foi atingido em...
Em setembro de 2023, explicamos no artigo “O que é um PABX Virtual e suas Vantagens para Empresas” como a telefonia em nuvem revolucionou a forma como...