<div>Pessoal</div>
<div> </div>
<div>Capturar DTMF pelo Asterisk-JAVA é mais confiavel utilizar um BaseAgiScript.</div>
<div> </div>
<div>Eu auxiliei um amigo aqui pela lista no início de fevereiro .. dá uma pesquisada no histórico .. eu passei um exemplo pra ele.</div>
<div> </div>
<div>Aqui nos usamos assim e funciona perfeitamente.</div>
<div> </div>
<div>[]&#39;s<br><br></div>
<div class="gmail_quote">Em 8 de março de 2010 22:32, Wanderson Alves Rodrigues <span dir="ltr">&lt;<a href="mailto:wanderson.alves.rodrigues@gmail.com">wanderson.alves.rodrigues@gmail.com</a>&gt;</span> escreveu:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">Boa noite pessoal.<br><br>Tenho uma duvida no funcionamento dos eventos do asterisk-java.<br><br>Nesse exemplo eu consigo pegar o evento de conecção que meu programa<br>
realiza com o asterisk.<br><br>import java.io.IOException;<br><br>import org.asteriskjava.manager.AuthenticationFailedException;<br>import org.asteriskjava.manager.ManagerConnection;<br>import org.asteriskjava.manager.ManagerConnectionFactory;<br>
import org.asteriskjava.manager.ManagerEventListener;<br>import org.asteriskjava.manager.TimeoutException;<br>import org.asteriskjava.manager.event.ConnectEvent;<br>import org.asteriskjava.manager.event.ManagerEvent;<br><br>
public class HelloEvents implements ManagerEventListener<br>{<br><br>   private ManagerConnection managerConnection;<br><br><br>   public HelloEvents() throws IOException<br>   {<br><br>       ManagerConnectionFactory factory = new ManagerConnectionFactory(<br>
       &quot;192.168.40.66&quot;, &quot;admin&quot;, &quot;digi&quot;);<br>       this.managerConnection = factory.createManagerConnection();<br><br>   }<br>   public void run() throws IOException, AuthenticationFailedException,<br>
   TimeoutException, InterruptedException<br>   {<br><br>       // register for events<br>       managerConnection.addEventListener(this);<br>       // connect to Asterisk and log in<br>       managerConnection.login();<br>
       // and finally log off and disconnect<br>       managerConnection.logoff();<br><br>   }<br><br>   public void onManagerEvent(ManagerEvent event)<br>   {<br>      if (event instanceof ConnectEvent)<br>      {<br>           ConnectEvent conect = (ConnectEvent) event;<br>
<br>           System.out.println(&quot;versão do protocolo : &quot;<br>+conect.getProtocolIdentifier());<br><br>       }<br><br><br>   }<br><br>   public static void main(String[] args) throws Exception<br>   {<br><br>       HelloEvents helloEvents;<br>
       helloEvents = new HelloEvents();<br>       helloEvents.run();<br><br>   }<br><br>}<br>###########################################################################<br>Beleza isso é fácil, mais por exemplo se eu quiser pegar os dígitos do<br>
dtmf de um celular por exemplo como usar a classe DtmfEvent.<br>Claro que vou ter que configurar os extensions e sip, mais se eu fizer<br>por exemplo.<br><br>import java.io.IOException;<br><br>import org.asteriskjava.manager.AuthenticationFailedException;<br>
import org.asteriskjava.manager.ManagerConnection;<br>import org.asteriskjava.manager.ManagerConnectionFactory;<br>import org.asteriskjava.manager.ManagerEventListener;<br>import org.asteriskjava.manager.TimeoutException;<br>
import org.asteriskjava.manager.event.DtmfEvent;<br>import org.asteriskjava.manager.event.ManagerEvent;<br><br>public class HelloEvents implements ManagerEventListener<br>{<br><br>   private ManagerConnection managerConnection;<br>
<br><br>   public HelloEvents() throws IOException<br>   {<br><br>       ManagerConnectionFactory factory = new ManagerConnectionFactory(<br>       &quot;192.168.40.66&quot;, &quot;admin&quot;, &quot;digi&quot;);<br>       this.managerConnection = factory.createManagerConnection();<br>
<br>   }<br>   public void run() throws IOException, AuthenticationFailedException,<br>   TimeoutException, InterruptedException<br>   {<br><br>       // register for events<br>       managerConnection.addEventListener(this);<br>
       // connect to Asterisk and log in<br>       managerConnection.login();<br>       // and finally log off and disconnect<br>       managerConnection.logoff();<br><br>   }<br><br>   public void onManagerEvent(ManagerEvent event)<br>
   {<br>     if (event instanceof DtmfEvent) {<br>           DtmfEvent dtmf = (DtmfEvent) event;<br><br>           System.out.println(&quot;Digit  : &quot; +dtmf.getDigit());<br>           System.out.println(&quot;Source : &quot; + dtmf.getSource());<br>
           System.out.println(&quot;Channel: &quot; +dtmf.getChannel());<br><br>           System.out.println(dtmf);<br>       }<br><br><br><br>   }<br><br>   public static void main(String[] args) throws Exception<br>   {<br>
<br>       HelloEvents helloEvents;<br>       helloEvents = new HelloEvents();<br>       helloEvents.run();<br><br>   }<br><br>}<br><br><br>Só isso não garante que eu possa usar os dígitos dtmf, no caso exibir.<br><br>To quebrando a cabeça, por favo me de uma luz. Existe uma maneira de<br>
usar essa classe DtmfEvent(como essa classe funciona). Caso eu ligue<br>para um canal da placa VB0408 que tenho, o asterisk faria a gerencia<br>do atendimento mais se eu tecla em um numero como garantir que a<br>classe DtmfEvent saiba que ocorreu um evento dtmf.<br>
<br>Muito obrigado..<br><br><br>Em 8 de março de 2010 17:21, jefferson alexandre<br>&lt;<a href="mailto:jefferson.alexandre@gmail.com">jefferson.alexandre@gmail.com</a>&gt; escreveu:<br>
<div>
<div></div>
<div class="h5">&gt; Já tentou usar &quot; AGI get data&quot;?<br>&gt; Aqui tem um exemplo em PHP que talvez lhe ajude.<br>&gt; <a href="http://phpagi.sourceforge.net/phpagi2/docs/__examplesource/exsource__root_phpagi-2.14_examples_dtmf.php_9f0d08538805cb50bb0f290606fe78d3.html" target="_blank">http://phpagi.sourceforge.net/phpagi2/docs/__examplesource/exsource__root_phpagi-2.14_examples_dtmf.php_9f0d08538805cb50bb0f290606fe78d3.html</a><br>
&gt;<br>&gt; 2010/3/8 &lt;<a href="mailto:brunoantognolli@email.com">brunoantognolli@email.com</a>&gt;<br>&gt;&gt;<br>&gt;&gt; Boa tarde Wanderson,<br>&gt;&gt;<br>&gt;&gt; Eu precisei utilizar &quot;comparações de som&quot; com o Asterisk-Java e não<br>
&gt;&gt; consegui inicialmente, e não tive a oportunidade de tentar outra vez.<br>&gt;&gt;<br>&gt;&gt; Imagino que você possa gravar o DMTF e após isso comparar as ondas de som,<br>&gt;&gt; a partir daí poderia saber qual número foi digitado.<br>
&gt;&gt;<br>&gt;&gt; Talvez esse link ajude um pouco:<br>&gt;&gt;<br>&gt;&gt; <a href="http://blogs.reucon.com/asterisk-java/2009/04/03/speech_recognition_with_asterisk_java.html" target="_blank">http://blogs.reucon.com/asterisk-java/2009/04/03/speech_recognition_with_asterisk_java.html</a><br>
&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; Se você conseguir dar continuidade no assunto e resolver o problema posta<br>&gt;&gt; aí...<br>&gt;&gt; Att,<br>&gt;&gt; Bruno<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt;<br>&gt;&gt; -----Original Message-----<br>
&gt;&gt; From: Wanderson Alves Rodrigues &lt;<a href="mailto:wanderson.alves.rodrigues@gmail.com">wanderson.alves.rodrigues@gmail.com</a>&gt;<br>&gt;&gt; To: <a href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a><br>
&gt;&gt; Sent: Mon, Mar 8, 2010 3:23 pm<br>&gt;&gt; Subject: [AsteriskBrasil] como buscar o DTMF e passar pro Java?<br>&gt;&gt;<br>&gt;&gt; Caros, esta é a primeira vez que preciso de um Help da lista.<br>&gt;&gt; Preciso buscar o DTMF de um dos oito canais de uma placa VB0408 e<br>
&gt;&gt; passar para um programa Java.<br>&gt;&gt;<br>&gt;&gt; Já consigo buscar os eventos de conexão (embora não saiba o que<br>&gt;&gt; significam os numeros que aparecem).<br>&gt;&gt;<br>&gt;&gt; O servidor está 100% operacional, drivers devidamente compilados e<br>
&gt;&gt; placa funcionando corretamente. Uso um Trixbox.<br>&gt;&gt;<br>&gt;&gt; Optei por Asterisk-Java por ter facilidade com a linguagem.<br>&gt;&gt; O case final é o seguinte:<br>&gt;&gt;<br>&gt;&gt; Preciso que meu programa seja capaz de buscar simultaneamente os DTMFs<br>
&gt;&gt; de cada canal da VB0408 e exiba o número pressionado no celular (após<br>&gt;&gt; capturar o DTMF) na tela, para cada canal.<br>&gt;&gt;<br>&gt;&gt; Alguém sabe se usando a Menager API somente, eu consigo obter os DTMFs?<br>
&gt;&gt; Qualquer exemplo será muito bem vindo!<br>&gt;&gt;<br>&gt;&gt; Grande abraço a todos!<br>&gt;&gt;<br>&gt;&gt; Wanderson.<br>&gt;&gt; _______________________________________________<br>&gt;&gt; KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.<br>
&gt;&gt; - Hardware com alta disponibilidade de recursos e qualidade KHOMP<br>&gt;&gt; - Suporte técnico local qualificado e gratuito<br>&gt;&gt; Conheça a linha completa de produtos KHOMP em <a href="http://www.khomp.com.br/" target="_blank">www.khomp.com.br</a><br>
&gt;&gt; _______________________________________________<br>&gt;&gt; Lista de discussões AsteriskBrasil.org<br>&gt;&gt; <a href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a><br>
&gt;&gt; <a href="http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil" target="_blank">http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil</a><br>&gt;&gt;<br>&gt;&gt; _______________________________________________<br>
&gt;&gt; KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.<br>&gt;&gt; - Hardware com alta disponibilidade de recursos e qualidade KHOMP<br>&gt;&gt; - Suporte técnico local qualificado e gratuito<br>&gt;&gt; Conheça a linha completa de produtos KHOMP em <a href="http://www.khomp.com.br/" target="_blank">www.khomp.com.br</a><br>
&gt;&gt; _______________________________________________<br>&gt;&gt; Lista de discussões AsteriskBrasil.org<br>&gt;&gt; <a href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a><br>
&gt;&gt; <a href="http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil" target="_blank">http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil</a><br>&gt;<br>&gt;<br>&gt; _______________________________________________<br>
&gt; KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.<br>&gt; - Hardware com alta disponibilidade de recursos e qualidade KHOMP<br>&gt; - Suporte técnico local qualificado e gratuito<br>&gt; Conheça a linha completa de produtos KHOMP em <a href="http://www.khomp.com.br/" target="_blank">www.khomp.com.br</a><br>
&gt; _______________________________________________<br>&gt; Lista de discussões AsteriskBrasil.org<br>&gt; <a href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a><br>&gt; <a href="http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil" target="_blank">http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil</a><br>
&gt;<br>_______________________________________________<br>KHOMP: qualidade em placas de E1, GSM, FXS e FXO para Asterisk.<br>- Hardware com alta disponibilidade de recursos e qualidade KHOMP<br>- Suporte técnico local qualificado e gratuito<br>
Conheça a linha completa de produtos KHOMP em <a href="http://www.khomp.com.br/" target="_blank">www.khomp.com.br</a><br>_______________________________________________<br>Lista de discussões AsteriskBrasil.org<br><a href="mailto:AsteriskBrasil@listas.asteriskbrasil.org">AsteriskBrasil@listas.asteriskbrasil.org</a><br>
<a href="http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil" target="_blank">http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil</a><br></div></div></blockquote></div><br><br clear="all"><br>-- <br>
Luis Machado Reis<br>Analista de Sistemas<br><a href="http://www.singularideas.com.br">www.singularideas.com.br</a><br>