[AsteriskBrasil] Como fazer a integracao com java, AGI e AMI

douglas henrique de morais oticasdouglas em gmail.com
Terça Junho 11 22:12:31 BRT 2013


Valeu Rodrigo, ainda esta meio obscuro mas vou contiunar estudando. Estou
com os livros "ASTERISK NA PRATICA", do Alexandre Keller e o
"ASTERISK: O FUTURO DA TEFEFONIA" do Jim Van Meggelen, et al. Sao bons pra
ajudar a instalar e configurar o Asterisk mas muito fraquinhos nas
explicacoes de AGI e AMI.



Em 11 de junho de 2013 21:53, Rodrigo Ferreira <rsferreira08 em gmail.com>escreveu:

> Para criar as contas SIP/IAX e gerenciar planos de discagem eh soh usar
> realtime (que utiliza banco de dados) nem precisa usar AGI p isso .. Agora
> o AMI se me lembro bem, vc usa para monitoramento do Asterisk utilizando
> uma aplicacao externa, no teu caso o java conectado no asterisk ..
>
>
>
> On Tuesday, June 11, 2013, douglas henrique de morais wrote:
>
>> Agradeco a todos pela atencao.
>>
>> Carlos, ainda nao ficou claro a diferenca entre AGI e AMI. Quando vc diz
>> que AGI define um conjuntos de regras vc esta se referindo ao plano de
>> discagem ? Atraves de AGI eu posso criar um plano de discagem dinamicamente
>> fazendo uso de um banco de dados relacional ? E o AMI ? serve apenas para
>> monitorar o Asterisk ? Pra saber quem ligou, quanto tempo durou a ligacao,
>> atender, gerencia filas, essas coisas ?
>>
>> Pesquisando mais um pouco encontrei o Asterisk-Java. No site fala de
>> FastAgi e Manager API. Mas ainda nao entendi a diferenca entre os dois.
>> Pude perceber pelo exemplo que com o Manager API eu poderia criar uma
>> aplicacao java stand alone e interagir com Asterisk atraves de TCP/IP. Isso
>> se daria de forma direta, sem um servidor intermediario ? Porque pelo que
>> me parece o FastAgi precisa que seja executado uma especie de servidor que
>> ficara responsavel como intermediario entre o Asterisk e a aplicacao java.
>> Pelo menos foi isso que entendi quando o exemplo do site
>> http://www.asterisk-java.org/development/tutorial.html  diz para
>> executar o asterisk-java.jar.
>>
>> Alias,* *é a mesma coisa que o Jefferson orienta a fazer no exemplo do
>> site http://www.asteriskdocs.com.br/blog. Mas quando eu devo usar a
>> abordagem AGI e quando devo usar a abordagem AMI ?
>>
>> O meu proposito era construir uma interface web onde eu poderia
>> administrar o asterisk, gerenciar filas, configurar novas contas SIP e IAX.
>>
>>
>>
>>
>> Em 11 de junho de 2013 13:12, Carlos Toguchi <carlos.toguchi em gmail.com>escreveu:
>>
>> Para completar a minha resposta se nào ficou claro:
>> imagine o seguinte . Vc tem o asterisk e o mundo extior (uma aplicação).
>> O asterisk pode se comunicar com a aplicação ou a aplicação pode se
>> comunicar com o Asterisk, Logo vc pode ter :
>> ----------------------------                 -----------------
>> | ASTERISK         |--------------> | Aplicação |
>> ---------------------------                  ------------------
>>
>> Nest caso o Asterisk precisa interagir com a aplicação:
>> Exemplo alguem liga para um numero para :
>> 1) Talvez intergir com uma URA de modo que receba por e-mail seu saldo em
>> um site de compras
>> ou
>> 2) Interagir com uma URA para que um determinado servidor reinicie (de um
>> reboor)
>>
>> Você vai usar um AGI, do Asterisk chama uma aplicação pasando os
>> parametros necessários apra o programa, como passar e receber os
>> paarametors pela apliacção depende da linguagem de programação, como vc
>> chama um programa no comando de linha com parametros e utliza estes
>> parametros na aplicação, se vc ficer em C/C++, trata de um modo em PHP de
>> outro e em Java de outro modo ainda.
>>
>>
>> Agora existe a situação contraria:
>> ----------------------------                 -----------------
>> | ASTERISK         |<-------------- | Aplicação |
>> ---------------------------                  ------------------
>>
>> Nste caso é a apicação que está interagindo com Asterisk, exemplo:1)
>> Uma aplicação que monitora os servidores e envia um comando apra o
>> Astrerisk discar para o telefone do adminsitrador dos servidor e tocar uma
>> mensagem de alerta
>>
>> 2) Uma aplicação de uma empresa que verifica se cos clientes pagaram suas
>> faturas, que não tenham efetuado o pagamento a apliação dispara um comando
>> par ao Asterisk discar para os cliente e tocar uma mensagem do tipo "Até a
>> presente data constatamos que sua última faura encontra-se em aberto"
>>
>> Você vai usar AMI.
>>
>> Um aplicação AMI consegue eviar muitos dos comdanos que vc executa na
>> console do Asterisk, tal como o comando CALL e etc.
>> Verifique a documentação do AMI.
>>
>> Este é um tópico que percebo é pouco explorado aqui que a a facilidade do
>> Asterisk em CTI.
>>
>> Já vi muito caras fazendo coisas junto o ARDUINO.
>> Tipo usar Asterisk mais Arduino para :
>>
>> 1) Ligar para o Asterisk para disparar um comoando e com o Arduino ligar
>> um equipamento  para liberar ração para o cachorro ou para os peixes no
>> aquário (Ok tem pessoas no mundo com tempo de sobra para pensar nestas
>> coisas)
>>
>> Para quem gosta de programar faça uma busca por Asterisk Arduino
>>
>> Até
>> Carlos
>>
>>
>>
>> 2013/6/11 douglas henrique de morais <oticasdouglas em gmail.com>
>>
>> Obrigado Carlos... vou estudar mais um pouquinho... rs
>>
>>
>> Em 10 de junho de 2013 20:44, Carlos Toguchi <carlos.toguchi em gmail.com>escreveu:
>>
>> AGI - Asterisk Gateway Interface
>> AMI - Asterisk Manager API
>>
>> AGI define uma Interface, ou seja, um conjuntos de regras que permite o
>> ambiente do Asterisk chamar um programa, passando valores e reebendo
>> valores através do código de retorno do programa, mais ou menos isso.
>>
>> Já o AMI define um protocole de modo que um programa pode interagir com o
>> Asterisk comunicando-se través de uma conexãp TCP/IP. Basicamente vc cria
>> um socket escrevendo e lendo valores través deste socket.
>>
>> Já criar conta SIP com java, tenha em mente que se vc usa realtime, vc
>> deve criar os dados na tabela do banco de daos, então ok. Se vc não usa o
>> realtime as contas sip são definie em um arquivo com a extensão conf
>> (sip.conf e etc.), logo seu programa java deve conseguir escrever neste
>> arquivo.
>>
>> No AMI Asterisk tem ou tinha problemas com muitas chamadas
>> efetuadas por vários clientes simultaneos apra ele, tanto que existem
>> alguns programas de proxy para chamadas AMI, os Asterisk Manager Proxy.
>>
>>
>>
>
> --
>
>
> Atenciosamente.
> Eng.° Rodrigo Ferreira
> ITIL v3 Certified
>
> <http://br.linkedin.com/pub/rodrigo-ferreira/31/757/901>
>
>
> _______________________________________________
> KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;
> Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;
> Intercomunicadores para acesso remoto via rede IP. Conheça em
> www.Khomp.com.
> _______________________________________________
> ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.
> Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.
> Channel Bank – Appliance Asterisk - Acesse www.aligera.com.br.
> _______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20130611/ac3a9706/attachment.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil