Muito bom Danilo,<div><br></div><div>só tenho uma sugestão a acrescentar para melhorar a segurança:</div><div><br></div><div>[saida-callback]</div><div><div>exten => 1000,1,Answer()</div><div>exten => 1000,n,Authenticate(123456)</div>
<div>exten => 1000,n,PlayBack(beep)</div></div><div><br></div><div><br clear="all"><div>Cordialmente,<br><br>Sílvio Garbes Lara<br><br>Especialista em Desenvolvimento de Sistemas para Web - IEC PUC MG<br>Bacharel em Sistemas de Informação - PUC MG<br>
Linux Red Hat Certified System Administrator (RHCT e RHCSA)<br>IPv6 Certified Sage (Hurricane Eletric)<br>MSN: <a href="mailto:silvio007@hotmail.com" target="_blank">silvio007@hotmail.com</a><br>Site: <a href="http://www.silviogarbes.com.br" target="_blank">www.silviogarbes.com.br</a><br>
Email/GTalk: <a href="mailto:silviogarbes@gmail.com" target="_blank">silviogarbes@gmail.com</a></div>
<br><br><div class="gmail_quote">2013/3/7 Guilherme Rezende <span dir="ltr"><<a href="mailto:asterisk@guilherme.eti.br" target="_blank">asterisk@guilherme.eti.br</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
Boa contribuição Danilo.. Nunca precisei usar, mas caso precise,
agora ja conheço a solução.<br>
<br>
Em 06/03/2013 17:35, Danilo Almeida escreveu:
<blockquote type="cite"><div><div class="h5">
<div>
<p class="MsoNormal">Olá galera,<u></u><u></u></p>
<p class="MsoNormal">Hoje precisei criar um callback na empresa
que trabalho, esse callback funciona da seguinte maneira:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Ligo na empresa do meu celular(ou de
qualquer número que bine) de qualquer região, o servidor pega
o meu número, desliga a chamada e me retorna, após isso,
digito o numero que desejo fazer a ligação e ele disca e
completa para mim.<u></u><u></u></p>
<p class="MsoNormal">Isso foi necessário, pois nossos celulares
só fazem ligação para região 43...<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Então criei uma tutorial Básico para quem
necessitar.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Callback para ligações externas<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">primeiro, criaremos a regra de entrada,
nesse caso estou simulando uma ligação entrando por um <u></u><u></u></p>
<p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal">determinado DDR de um link E1, mais pode
ser ligações de entrada de qualquer tipo (FXO, SIP, <u></u><u></u></p>
<p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal">Analógico, etc) bastando apenas ser
alterado para cada situação.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">[entrada]<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">exten => _3200,1,NoOp(Realizando
CallBack )<u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
_3200,2,Wait(1)<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
_3200,3,Macro(callback,)<u></u><u></u></span></p>
<p class="MsoNormal">exten => _3200,4,Hangup()<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">linha 1 - mostra na tela a descrição dentro
dos parenteses "()"<u></u><u></u></p>
<p class="MsoNormal">linha 2 - espera um segundo antes de
continuar<u></u><u></u></p>
<p class="MsoNormal">linha 3 - vai para macro callback que
veremos a seguir.<u></u><u></u></p>
<p class="MsoNormal">linha 4 - derruba a ligação após colher as
primeiras informações.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">agora, criaremos uma macro callback onde
criaremos o arquivo .call que fará o retorno da ligação para o
número que ligou.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span lang="EN-US">[macro-callback]<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,1,set(CALLBACK-FILE=/var/spool/asterisk/outgoing/${MACRO_EXTEN}-${CALLERID(num)}.call)<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo Channel: SIP/0${CALLERID(num)}@g1entrada
> ${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo Context: saida-callback >>
${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo Extension: 1000 >> ${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo Callerid: ${CALLERID(num)} >>
${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo MaxRetries: 2 >> ${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo RetryTime: 30 >> ${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
s,n,system(echo WaitTime: 30 >> ${CALLBACK-FILE})<u></u><u></u></span></p>
<p class="MsoNormal">exten => s,n,MacroExit<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">linha 1 - seto uma variável com o diretório
/var/spool/asterisk/outgoing/ + o nome do arquivo que será
criado automaticamente. <u></u><u></u></p>
<p class="MsoNormal">linhas n - no restante das linhas, escrevo
dentro do arquivo as opções necessárias para rodar um arquivo
.call (vejam mais informações de arquivos .call para
entenderem melhor caso tenham dúvidas).<u></u><u></u></p>
<p class="MsoNormal">linha 2 - canal que sairá a ligação, no meu
caso estou enviando pela operadora da empresa em que trabalho.<u></u><u></u></p>
<p class="MsoNormal">linha 3 - contexto que será direcionado
para que a pessoa possa digitar o numero desejado.<u></u><u></u></p>
<p class="MsoNormal">linha 4 - extensão que será entregue esta
ligação dentro do contexto anterior.<u></u><u></u></p>
<p class="MsoNormal">linha 5 - callerid da chamada<u></u><u></u></p>
<p class="MsoNormal">linha 6 - Numero maximo de vezes que o
asterisk irá tentar chamar o originador antes de considerar
que a chamada falhou.<u></u><u></u></p>
<p class="MsoNormal">Este parâmetro não considera a primeira
tentativa, portanto se definido como 0, o asterisk tentará
chamar apenas uma vez.<u></u><u></u></p>
<p class="MsoNormal">linha 7 - Seguntos entre as tentativas de
chamar o originador. O padrão é 300 segundos.<u></u><u></u></p>
<p class="MsoNormal">linha 8 - Numero de segundos que o asterisk
irá chamar o originador a cada tentativa. O padrão é 45.<u></u><u></u></p>
<p class="MsoNormal">linha 9 - sai da Macro.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">após sair da macro, o asterisk dará o
hangup conforme linha 4 do contexto entrada, após isso, o
arquivo .call criado já será executado chamando o número que
havia ligado anteriormente, quando houver o atendimento dessa
chamada, jogará para o contexto descrito no arquivo .call que
criamos (saida-callback).<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">o contexto saida-callback dará um bip e
aguardará um numero ser digitado. Nesse caso dará um Bip, mais
pode-se personalizar com uma gravação da maneira que desejar.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span lang="EN-US">[saida-callback]<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
1000,1,Answer()<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US">exten =>
1000,2,PlayBack(beep)<u></u><u></u></span></p>
<p class="MsoNormal">exten => 1000,n,Read(NUMERO)<u></u><u></u></p>
<p class="MsoNormal">exten =>
1000,n,Dial(SIP/${NUMERO}@g1telecom,40,tg)<u></u><u></u></p>
<p class="MsoNormal">exten => 1000,n,Macro(hangupcall,)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">linha 1 - atende a chamada<u></u><u></u></p>
<p class="MsoNormal">linha 2 - dá um bip após o atendimento da
chamada, aqui pode-se colocar uma mensagem para o usuário
ouvir tipo: digite o numero que deseja, ou coisa do tipo.<u></u><u></u></p>
<p class="MsoNormal">linha 3 - lê os digitos e salva na variável
NUMERO<u></u><u></u></p>
<p class="MsoNormal">linha 4 - dá um dial para o numero
capturado.<u></u><u></u></p>
<p class="MsoNormal">linha 5 - dá um hangup ao término da
ligação.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">acho que é isso pessoal, desculpem qualquer
coisa, mais esse é um dos meus primeiros tutoriais e fiz
correndo, qualquer erro me perdoem..rsrs.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">abraços.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><b><span style="font-family:"Tahoma","sans-serif";color:#000066">att<u></u><u></u></span></b></p>
<p class="MsoNormal"><b><span style="font-family:"Tahoma","sans-serif";color:#000066"><u></u> <u></u></span></b></p>
<p class="MsoNormal"><b><span style="font-family:"Tahoma","sans-serif";color:#000066">Danilo
Ricardo de Almeida</span></b><b><span style="font-size:12.0pt;font-family:"Tahoma","sans-serif";color:#000066"><u></u><u></u></span></b></p>
<p class="MsoNormal"><i><span style="font-size:7.0pt;color:#000066">Engenharia e
Desenvolvimento / Engineering and Development<u></u><u></u></span></i></p>
<p class="MsoNormal"><b><span style="font-size:8.0pt;color:#000066"><u></u> <u></u></span></b></p>
<p class="MsoNormal"><b><span style="font-family:"Tahoma","sans-serif";color:#000066">GRUPO
G1 TELECOMUNICAÇÕES LTDA.<u></u><u></u></span></b></p>
<p class="MsoNormal" style="text-align:justify"><img src="cid:part1.04050500.02060400@guilherme.eti.br" alt="logo.gif" align="left" height="97" hspace="12" width="99"><b><span style="font-size:8.0pt;color:#000066"><u></u><u></u></span></b></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:8.0pt;color:#000066">Rua: Ponta Grossa,
n°587 – Jardim Dom Bosco<u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:8.0pt;color:#000066">CEP: 86060-450 -
Londrina - PR<u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:7.5pt;font-family:Wingdings;color:#000066">(</span><span style="font-size:8.0pt;color:#000066">Fone/Fax: +55 43
3028-1120 / <a href="tel:%2B55%2043%203028-1120" value="+554330281120" target="_blank">+55 43 3028-1120</a><u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:7.5pt;font-family:Wingdings;color:#000066">y</span><span style="font-size:8.0pt;color:#000066">EMAIL: </span><u><span style="font-size:8.0pt;color:#0707c9" lang="EN-US"><a href="mailto:danilo.almeida@g1telecom.com.br" target="_blank"><span style="color:#0707c9" lang="PT-BR">danilo.almeida@g1telecom.com.br</span></a></span></u><span style="font-size:8.0pt;color:#000066"><u></u><u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:7.5pt;font-family:Wingdings;color:#000066">y</span><span style="font-size:8.0pt;color:#000066" lang="EN-US">MSN: </span><u><span style="font-size:8.0pt;color:#0707c9" lang="EN-US"><a href="mailto:danilo.almeida@g1telecom.com.br" target="_blank"><span style="color:#0707c9">danilo.almeida@g1telecom.com.br</span></a></span></u><b><span style="font-size:8.0pt;color:#0707c9" lang="EN-US"><u></u><u></u></span></b></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-size:7.5pt;font-family:Wingdings;color:#000066">y</span><span style="font-size:8.0pt;color:#000066">Suporte: </span><span style="font-size:8.0pt;color:#0707c9"><a href="mailto:suporte@g1telecom.com.br" target="_blank"><span style="color:#0707c9">suporte@g1telecom.com.br</span></a><u><u></u><u></u></u></span></p>
<p class="MsoNormal" style="text-align:justify"><span style="font-family:Wingdings;color:#000066">:</span><span style="font-size:8.0pt;color:#000066">Site: </span><span style="color:#0000cc"><a href="http://www.g1telecom.com.br/" target="_blank"><span style="font-size:8.0pt;color:#0000cc">www.g1telecom.com.br</span></a></span><u><span style="font-size:8.0pt;color:#0000cc"><u></u><u></u></span></u></p>
<p class="MsoNormal"><b><span style="font-size:24.0pt;font-family:Webdings;color:green"><u></u> <u></u></span></b></p>
<p class="MsoNormal"><b><span style="font-size:24.0pt;font-family:Webdings;color:green">P</span></b><span style="font-size:10.0pt;color:#1f497d"> </span><b><span style="font-size:7.5pt;color:green">“VOCÊ PRECISA MESMO
IMPRIMIR?”</span></b><span style><u></u><u></u></span></p>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<br>
<fieldset></fieldset>
<br>
</div></div><pre>_______________________________________________
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 <a href="http://www.Khomp.com" target="_blank">www.Khomp.com</a>.
_______________________________________________
DIGIVOICE Fabricante de Placas de Voz e Channel Bank
20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM
Centro Treinamento - Curso de PABX IP - Asterisk - Site <a href="http://www.digivoice.com.br" target="_blank">www.digivoice.com.br</a>
_______________________________________________
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 <a href="http://www.aligera.com.br" target="_blank">www.aligera.com.br</a>.
_______________________________________________
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></pre>
</blockquote>
<br>
</div>
<br>_______________________________________________<br>
KHOMP: completa linha de placas externas FXO, FXS, GSM e E1;<br>
Media Gateways de 1 a 64 E1s para SIP com R2, ISDN e SS7;<br>
Intercomunicadores para acesso remoto via rede IP. Conheça em <a href="http://www.Khomp.com" target="_blank">www.Khomp.com</a>.<br>
_______________________________________________<br>
DIGIVOICE Fabricante de Placas de Voz e Channel Bank<br>
20 anos de experiência com E1(R2/ISDN), FXS, FXO e GSM<br>
Centro Treinamento - Curso de PABX IP - Asterisk - Site <a href="http://www.digivoice.com.br" target="_blank">www.digivoice.com.br</a><br>
_______________________________________________<br>
ALIGERA – Fabricante nacional de Gateways SIP-E1 para R2, ISDN e SS7.<br>
Placas de 1E1, 2E1, 4E1 e 8E1 para PCI ou PCI Express.<br>
Channel Bank – Appliance Asterisk - Acesse <a href="http://www.aligera.com.br" target="_blank">www.aligera.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>