<div dir="ltr">Cláudio, creio que para esse cenário não vou precisar... de qualquer forma, numa googlada rápida aqui, vi que esse node.js é muito bom, vou dar mais uma pesquisada aqui... se souber de algum material com algum exemplo me envie por favor.<div><br></div><div>Abraços!</div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><b style="background-color:rgb(255,255,255)"><font color="#0000ff">att</font></b><div><b style="background-color:rgb(255,255,255)"><font color="#0000ff">Danilo Almeida</font></b></div></div></div></div>
<br><div class="gmail_quote">Em 22 de maio de 2015 14:21, Claudio Eden <span dir="ltr">&lt;<a href="mailto:claudio.eden@gmail.com" target="_blank">claudio.eden@gmail.com</a>&gt;</span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div>Danilo, <br><br></div>A depender do cenário, do tempo e funcionalidade da ferramenta/rotina e outros fatores (ex.: criticidade, volume, licenciamento, etc), a opção que eu sugiro é utlizar via AMI + node.js. <br><br></div>Com o node.js você ficaria monitorando via telnet e conseguiria obter TUDO dessa ligação. Toda e qualquer ação que ocorrer você consegue &quot;sniffar&quot; através dessa modalidade e assim, não só saber no final se a ligação foi feita ou não, poderá acompanhar tudo passo-a-passo.<br><br></div>Todavia, como falei, o esforço vai depender do seu cenário. <br><br></div>Enjoy.<br></div><div class="gmail_extra"><span class=""><br clear="all"><div><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div><b><br></b></div><div><b>Atenciosamente,</b></div>
<div> </div>
<div> </div>
<div><span></span><b><font color="#45818e">Cláudio Éden</font></b>  </div><div>Consultor de TI  |  dCAA  |  MCDST  |  ITIL <br><a href="tel:%2B55%2085%208972-1842" value="+558589721842" target="_blank">+55 85 8972-1842</a> <br><br></div><div><a href="http://www.eden.com.br" target="_blank">http://www.eden.com.br</a> </div><div><a href="http://www.asteriskhandson.com.br" target="_blank">http://www.asteriskhandson.com.br</a></div><div><br></div><div><img src="https://docs.google.com/uc?export=download&amp;id=0B7kQ7o32GSoeTUstbzQyVHZlSjA&amp;revid=0B7kQ7o32GSoeY1hQSFp2aUdTaDBpWFRWRDhkUlMzL3hVOWs0PQ"><br><br></div></div></div></div></div></div></div></div></div></div></div>
<br></span><div><div class="h5"><div class="gmail_quote">Em 22 de maio de 2015 11:02, Danilo Almeida <span dir="ltr">&lt;<a href="mailto:daniloricalmeida@gmail.com" target="_blank">daniloricalmeida@gmail.com</a>&gt;</span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Show de bola, Cláudio!<div><br></div><div>Vou fazer alguns testes aqui... estou aguardando uma resposta do pessoal do sistema, dei a ideia de salvar o status no Banco de dados juntamente com um ID gerado pelo sistema deles e enviado como parametro para o servidor.</div><div><br></div><div>Valeu pela dica Thiago.</div><div><br></div><div>Abraços!</div></div><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><b style="background-color:rgb(255,255,255)"><font color="#0000ff">att</font></b><span><font color="#888888"><div><b style="background-color:rgb(255,255,255)"><font color="#0000ff">Danilo Almeida</font></b></div></font></span></div></div></div><div><div>
<br><div class="gmail_quote">Em 21 de maio de 2015 14:13, Thiago Coutinho <span dir="ltr">&lt;<a href="mailto:root@thiagoc.net" target="_blank">root@thiagoc.net</a>&gt;</span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Uma solução seria usar a opção &quot;Archive&quot; do callfile:<br><br><strong>Archive:</strong> Yes/No - Move to subdir &quot;outgoing_done&quot; with &quot;Status: value&quot;, where value can be Completed, Expired or Failed.<br></div><div class="gmail_extra"><br><div class="gmail_quote"><span>Em 21 de maio de 2015 11:39, Danilo Almeida <span dir="ltr">&lt;<a href="mailto:daniloricalmeida@gmail.com" target="_blank">daniloricalmeida@gmail.com</a>&gt;</span> escreveu:<br></span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr">Bom dia, Pessoal!!<div><br></div><div>Surgiu a necessidade de integrar um sistema de terceiro em um servidor que tenho em um cliente.</div><div><br></div><div>O sistema fará uma discagem através de uma URL que criei.</div><div><br></div><div><a href="http://asterisk/discador.php?user=USER&amp;pass=SENHA&amp;origem=RAMAL&amp;destino=NUMERO" target="_blank">http://asterisk/discador.php?user=USER&amp;pass=SENHA&amp;origem=RAMAL&amp;destino=NUMERO</a></div><div><br></div><div>segue codígo:</div><div><br></div><div><div><font size="1">&lt;?php</font></div><div><font size="1">include_once &quot;Connection.class.php&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> # Usuario e senha para acesso ao sistema</font></div><div><font size="1"> $origem = $_GET[&#39;origem&#39;];</font></div><div><font size="1"> $destino = $_GET[&#39;destino&#39;];</font></div><div><font size="1"><br></font></div><div><font size="1">$conn = new Connection();</font></div><div><font size="1"><br></font></div><div><font size="1">    $user = anti_injection($_GET[&#39;user&#39;]);</font></div><div><font size="1">    $pass = anti_injection($_GET[&#39;pass&#39;]);</font></div><div><font size="1"><br></font></div><div><font size="1">    $sql1 = &#39;SELECT * FROM tb_usuarios WHERE user_login = \&#39;&#39;.$user.&#39;\&#39;AND user_senha = \&#39;&#39;.$pass.&#39;\&#39;&#39;;</font></div><div><font size="1">          $rs = mysql_query($sql1);</font></div><div><font size="1">          if(mysql_num_rows($rs) &gt; 0 ){</font></div><div><font size="1">            $permissao = TRUE;</font></div><div><font size="1">          }else{</font></div><div><font size="1">            $permissao =  FALSE;</font></div><div><font size="1">          }</font></div><div><font size="1"><br></font></div><div><font size="1"><br></font></div><div><font size="1">if(($permissao == TRUE)AND($origem != &quot;&quot;)AND($destino != &quot;&quot;)){ #informe o endereco ip do seu asterisk</font></div><div><font size="1"><br></font></div><div><font size="1"> $strHost = &quot;127.0.0.1&quot;;</font></div><div><font size="1"> </font></div><div><font size="1"> #especifique o usuario que ira conectar ao CLI (deve estar definido em /etc/asterisk/manager.conf)</font></div><div><font size="1"> $strUser = &quot;USUARIO&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #senha para o usuario acima</font></div><div><font size="1"> $strSecret = &quot;SENHA&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #especifique o canal (extension) que vc deseja receber estas ligacoes</font></div><div><font size="1"> #exemplo: SIP/XXX, IAX2/XXXX, ZAP/XXXX,</font></div><div><font size="1"> $strChannel = &quot;Local/&quot;.$origem.&quot;@contexto-discador&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #informe o contexto que ira processar a ligacao para PSTN</font></div><div><font size="1"> $strContext = &quot;contexto-pabx&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #especifique a prioridade do contexto acima</font></div><div><font size="1"> $strPriority = &quot;1&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #especifique a quantidade de tentativas</font></div><div><font size="1"> $strMaxRetry = &quot;2&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> $WaitTime = &quot;30&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #Duração entre uma tentativa e outra</font></div><div><font size="1"> $RetryTime = &quot;15&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #obtem o numero a ser discado</font></div><div><font size="1"> $strExten = $destino;</font></div><div><font size="1"><br></font></div><div><font size="1"> #especifica um callerid para a ligacao</font></div><div><font size="1"> $strCallerId = $origem;</font></div><div><font size="1"><br></font></div><div><font size="1"> #nome do arquivo a ser criado</font></div><div><font size="1"> $arquivo_tmp = &quot;/tmp/&quot;.$strExten.&quot;.call&quot;;</font></div><div><span style="white-space:pre-wrap"><font size="1">        </font></span></div><div><font size="1"> #diretorio a ser movido após escrita</font></div><div><font size="1"> $arquivo_call = &quot;/var/spool/asterisk/outgoing/&quot;.$strExten.&quot;.call&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1"> #abre arquivo</font></div><div><font size="1"> $oSocket = $fp = fopen($arquivo_tmp, &quot;w&quot;);</font></div><div><font size="1"><br></font></div><div><font size="1"> fputs($oSocket, &quot;Channel: $strChannel\r\n&quot;);</font></div><div><font size="1"> fputs($oSocket, &quot;Callerid: $strCallerId\r\n&quot;);</font></div><div><font size="1"> fputs($oSocket, &quot;Extension: $strExten\r\n&quot;);</font></div><div><font size="1"> fputs($oSocket, &quot;Context: $strContext\r\n&quot;);</font></div><div><font size="1"> fputs($oSocket, &quot;MaxRetries: $strMaxRetry\r\n&quot;);</font></div><div><font size="1"> fputs($oSocket, &quot;RetryTime: $RetryTime\r\n&quot;);</font></div><div><font size="1"> fputs($oSocket, &quot;WaitTime: $WaitTime\r\n\r\n&quot;);</font></div><div><font size="1"><br></font></div><div><font size="1"> fclose(oSocket);</font></div><div><font size="1"><br></font></div><div><font size="1">system(&quot;mv &quot;.$arquivo_tmp.&quot; &quot;.$arquivo_call);</font></div><div><font size="1"><br></font></div><div><font size="1"> //copy($arquivo_tmp,$arquivo_call);</font></div><div><font size="1">//unlink($arquivo_tmp);</font></div><div><font size="1"><br></font></div><div><font size="1"> echo &quot;ok&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1">exit;</font></div><div><font size="1"><br></font></div><div><font size="1">}else{</font></div><div><font size="1">echo &quot;Parametros invalidos&quot;;</font></div><div><font size="1"><br></font></div><div><font size="1">exit;</font></div><div><font size="1">}</font></div><div><font size="1">?&gt;</font></div><div><br></div><div>Através dessa URL esta realizando ligação normalmente, o que gostaria da ajuda de vocês, é uma maneira de retornar o status da chamada através dessa mesma URL para o sistema.</div><div><br></div><div>EX: 0 - ok, 1 - ramal indisponivel, etc</div><div><br></div><div>Sei que tem alguma forma, gostaria de saber se alguém já desenvolveu alguma coisa assim e pode me dar uma dica.</div><div><br></div><div>OBS: Estou escrevendo um arquivo .call e jogando ele dentro do outgoing do asterisk para gerar a chamada. No asterisk 11 tentei fazer com o originate e não obtive sucesso.</div><div><br></div><div>Desde já agradeço.. abraços!!</div><div><br clear="all"><div><div><div dir="ltr"><b style="background-color:rgb(255,255,255)"><font color="#0000ff">att</font></b><span><font color="#888888"><div><b style="background-color:rgb(255,255,255)"><font color="#0000ff">Danilo Almeida</font></b></div></font></span></div></div></div>
</div>
</div></div>
<br></div></div><span>_______________________________________________<br>
WORKOFFEE KHOMP: em Junho serão 2 edições do workshop<br>
gratuito da Khomp:  dia 11 em Brasília, e dia 18 em Curitiba<br>
Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100<br>
Garanta sua vaga e saiba mais em: <a href="http://www.workoffee.com.br" target="_blank">www.workoffee.com.br</a><br>
_______________________________________________<br>
DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk.<br>
Construa soluções de PABX IP com produtos DigiVoice - visite  <a href="http://www.digivoice.com.br" target="_blank">www.digivoice.com.br</a><br>
_______________________________________________<br>
Para remover seu email desta lista, basta enviar um email em branco para <a href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org" target="_blank">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a><br></span></blockquote></div><span><font color="#888888"><br><br clear="all"><br>-- <br><div>Thiago Coutinho<br><br>&quot;O povo não deveria temer o governo. O governo é quem deveria temer o povo.&quot;<br>V de Vingança</div>
</font></span></div>
<br>_______________________________________________<br>
WORKOFFEE KHOMP: em Junho serão 2 edições do workshop<br>
gratuito da Khomp:  dia 11 em Brasília, e dia 18 em Curitiba<br>
Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100<br>
Garanta sua vaga e saiba mais em: <a href="http://www.workoffee.com.br" target="_blank">www.workoffee.com.br</a><br>
_______________________________________________<br>
DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk.<br>
Construa soluções de PABX IP com produtos DigiVoice - visite  <a href="http://www.digivoice.com.br" target="_blank">www.digivoice.com.br</a><br>
_______________________________________________<br>
Para remover seu email desta lista, basta enviar um email em branco para <a href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org" target="_blank">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a><br></blockquote></div><br></div></div></div>
<br>_______________________________________________<br>
WORKOFFEE KHOMP: em Junho serão 2 edições do workshop<br>
gratuito da Khomp:  dia 11 em Brasília, e dia 18 em Curitiba<br>
Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100<br>
Garanta sua vaga e saiba mais em: <a href="http://www.workoffee.com.br" target="_blank">www.workoffee.com.br</a><br>
_______________________________________________<br>
DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk.<br>
Construa soluções de PABX IP com produtos DigiVoice - visite  <a href="http://www.digivoice.com.br" target="_blank">www.digivoice.com.br</a><br>
_______________________________________________<br>
Para remover seu email desta lista, basta enviar um email em branco para <a href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org" target="_blank">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a><br></blockquote></div><br></div></div></div>
<br>_______________________________________________<br>
WORKOFFEE KHOMP: em Junho serão 2 edições do workshop<br>
gratuito da Khomp:  dia 11 em Brasília, e dia 18 em Curitiba<br>
Aproveite e conheça os lançamentos: EBS Server PRO e UMG 100<br>
Garanta sua vaga e saiba mais em: <a href="http://www.workoffee.com.br" target="_blank">www.workoffee.com.br</a><br>
_______________________________________________<br>
DIGIVOICE: Fabricante pioneiro em Banco de Canais e Placas E1, GSM, FXO e FXS para Asterisk e Elastix. Temos Cursos de Telefonia IP e Asterisk.<br>
Construa soluções de PABX IP com produtos DigiVoice - visite  <a href="http://www.digivoice.com.br" target="_blank">www.digivoice.com.br</a><br>
_______________________________________________<br>
Para remover seu email desta lista, basta enviar um email em branco para <a href="mailto:asteriskbrasil-unsubscribe@listas.asteriskbrasil.org">asteriskbrasil-unsubscribe@listas.asteriskbrasil.org</a><br></blockquote></div><br></div>