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!
A criação de redes Wi-Fi personalizadas é essencial para quem busca mais controle sobre conexões, segurança e desempenho da rede. Neste artigo, vamos...
O Aligera AG561 é um gateway robusto e versátil projetado para integrar entroncamentos E1 e ISDN em soluções modernas de PABX IP...
A automação de centrais de atendimento tem se tornado uma das principais estratégias para empresas que buscam eficiência e conformidade regulatória...
Neste artigo, damos continuidade à série sobre a criação de uma URA (Unidade de Resposta Audível) no Asterisk para geração de protocolos de...