[AsteriskBrasil] Asterisk com JAVA

Alejandro Flores alejandrorflores em gmail.com
Sexta Agosto 12 11:16:14 BRT 2011


Olá Dilceu,

No asterisk-java tem uma documentação para iniciar. Bom, você pode
trabalhar de algumas formas com o java, via FastAGI e via manager.
Para o seu exemplo, recomendaria utilizar o FastAGI. Recentemente eu
criei um aplicativozinho para fazer umas validações/limitações para
utilizar o ChanSpy. Os passos que eu segui:

1. Criei uma pasta em /usr/share/java-agi/
2. Coloquei minha classe dentro dessa pasta e também o pacote
asterisk-java-0.3.1.jar
3. Crie o arquivo fastagi-mapping.properties e coloque:
chanSpyCtl.agi = chanspycontrol.ChanSpyControl
4. Iniciei o Server AGI com o comado:
# java -cp asterisk-java-0.3.1.jar:. org.asteriskjava.fastagi.DefaultAgiServer
5. Coloque a seguinte linha no contexto from-internal:
exten => 856,1,Agi(agi://127.0.0.1/chanSpyCtl.agi)
6. Reload no asterisk

Resumindo, você deve criar o seu aplicativo, coloca-lo no classpath
para rodar o DefaultAgiServer, no arquivo de mapeamentos, criar o
mapeamento para sua classe, configurar o asterisk para enviar a
ligação para o aplicativo. Observe que no passo 5, ele chama o
agi://127.0.0.1/chanSpyCtl.agi onde o chanSpyCtl.agi foi especificado
no arquivo de mapeamentos para classe java que tem o aplicativo, como
descrito no passo 3. Dessa forma, o DefaultAgiServer vai receber a
requisição e saber a qual classe se destina aquela chamada.

No meu caso, o meu aplicativo autentica o usuário, baseado no número
de origem, em uma base MySQL. Depois solicita que ele digite o ramal
que deseja escutar e eu verifico no mysql se ele tem permissão para
escutar aquele determinado ramal. Se tiver, eu chamo o chanspy.

Deu pra entender? :-)


2011/8/11 dlpazinatto em gmail.com <dlpazinatto em gmail.com>:
> Bom dia Pessoal,
> Por acaso alguém tem um exemplo de agi em java que o asterisk envie uma
> solicitação para o java e o java mande executar um Dial?
> Procurei na net, mas como ainda estou aprendendo ficou meio complicado de
> entender.
> Grato por qualquer ajuda
>
> --
> Dilceu Luiz Pazinatto
> Electronics technician
> Engineering students

-- 

Alejandro Flores
http://www.triforsec.com.br/


Mais detalhes sobre a lista de discussão AsteriskBrasil