[AsteriskBrasil] RES: RES: RES: Asterisk não detecta atendimento pela operadora
Fernando - NextBilling IP Solutions
fernando em nextbilling.com.br
Quinta Maio 23 09:22:06 BRT 2013
Caro Ronaldo.
Você chegou a tirar o siptrace da chamada em questão?
Precisa tirar o siptrace para verificar a o que seu Tronco permite de
Gateway.
Você pode forçar a utilização de um Codec no call file, usando o Set:
Set: SIP_CODEC=g729
Set: SIP_CODEC_OUTBOUND=g729
Esse poderia ser um belo ponto de partida.
O que o Mike disse, é o caminho que eu segui, ou seja, usando através do
Callfile chamar um Local Channel:
Channel: Local/123 em contexto/n
Set: SIP_CODEC=g729
Set: SIP_CODEC_OUTBOUND=g729
[contexto]
exten => _X.,1,Dial(SIP/tronco/${EXTEN},,tT)
Atenciosamente,
Fernando da Silva Santos
CEO – Chief Executive Officer
NextBilling IP Solutions
SP: +55 (11) 3522-9200
RJ: +55 (21) 4063-8854
Tollfree: 0800 580-9200
<http://www.nextbilling.com.br/> http://www.nextbilling.com.br
De: asteriskbrasil-bounces em listas.asteriskbrasil.org
[mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org] Em nome de Mike
Tesliuk
Enviada em: quarta-feira, 22 de maio de 2013 23:24
Para: asteriskbrasil em listas.asteriskbrasil.org
Assunto: Re: [AsteriskBrasil] RES: RES: Asterisk não detecta atendimento
pela operadora
Entendi o seu caso,
Bom, não sei como ele poderia pegar o hangup cause neste caso, porém oque
você falou de mandar a chamada para um contexto é oque eu faço até para ter
mais flexbilidade, você pode usar o Local/NUMERO em contexto invez do
SIP/operadora/numero para fazer isso, de qualquer forma, acho estranho o seu
caso, nunca tive problema similar, mas nas ultimas operações de discagem que
fiz também não usei asterisk acabei usando o NewFies com Freeswitch pq achei
bem interessante e me atendia na situação.
em todo caso, normalmente eu por questões de tarifação e tudo mais costumo
ter uma maquina para rodar a aplicação e outra para ser o gateway desta,
então eu (asterisk N2) sempre recebo a chamada e faço os devidos tratamentos
, acho que talvez por isso nunca tive este problema.
Em 22/05/13 21:14, Ronaldo Toledo escreveu:
Mike, o meu problema é, na verdade, pegar o código que o meu tronco sip me
repassa ao ligar para os tais números.
Quando uso o call file, ele me repassa aquele REASON 8, CONGESTION(se não
estou enganado), o código guarda-chuva que se aplica a uma série de erros.
O HANGUPCAUSE seria a variável que eu imaginei me servir, mas, até onde li,
ele só seria aplicável ao Dial, o que me levou a alterar a lógica para que
o Asterisk executasse um certo contexto e ali dentro eu faria o Dial e teria
o código de erro em HANGUPCAUSE. O inesperado é que a mesma conexão, que
acontece com o call file, não acontece com o Dial devido ao erro que citei e
que vc recomendou ligar o debug para tentar diagnosticar. Eu fiz isto, mas o
debug só mostrou os eventos relacionados a chamada do call file e não
reportou os eventos do Dial(talvez porque ele nem chegou a iniciar a
conversa com o tronco)
O Fernando, que também participa desta thread, disse que é possível, sim,
usar o HANGUPCAUSE para Call Files e me pediu que eu postasse o call file e
o contexto do dialplan, mas ele ainda não retornou.
Em 22 de maio de 2013 12:32, Mike Tesliuk <mike em tesliuk.com
<mailto:mike em tesliuk.com> > escreveu:
Tudo bem que voce nao alterou, porém veja o seguinte, ele reclamou que nao
conseguiu estabelecer um codec, então habilite o debug e veja oque voce ta
fazendo, talvez voce esteja pegando uma rota que o cara esteja te jogando
729 e voce nao tenha, enfim, veja esta questão.
Em 22/05/13 11:23, Ronaldo Toledo escreveu:
Eis o call file
Channel: SIP/tronco/numtel
Context: testeamd
extension: s
priority: 1
waittime: 30
Set:LINHACSV=xxxxxxxxxxxxxxxxxxx*#*55*#*31*#*numtel
O contexto testeamd no dialplan
[testeamd]
exten => s,1,Set(marca=0)
exten => s,n,Noop(Telefone chamado ${EXTEN})
exten => s,n,Playback(/usr/local/projetoamd/teste)
exten => s,n,AMD
exten => s,n,GotoIf($[${AMDSTATUS}=HUMAN]?humano)
exten => s,n,GotoIf($[${AMDSTATUS}=MACHINE]?maquina)
exten => s,n,GotoIf($[${AMDSTATUS}=NOTSURE]?duvida)
exten => s,n,GotoIf($[${AMDSTATUS}=HANGUP]?desligou)
exten => s,n(maquina),WaitForSilence(2500)
exten => s,n,System(/usr/local/projetoamd/registrar.pl <http://registrar.pl>
"${LINHACSV}" "Maquina")
exten => s,n,Set(marca=1)
exten => s,n,Hangup
exten => s,n(humano),WaitForSilence(500)
exten => s,n,System(/usr/local/projetoamd/registrar.pl <http://registrar.pl>
"${LINHACSV}" "Humano")
exten => s,n,Set(marca=1)
exten => s,n,Hangup
exten => s,n(duvida),WaitForSilence(500)
exten => s,n,System(/usr/local/projetoamd/registrar.pl <http://registrar.pl>
"${LINHACSV}" "Duvida")
exten => s,n,Set(marca=1)
exten => s,n,Hangup
exten => h,1,GotoIf($["${marca}" = "1"]?getout)
exten => h,n,System(/usr/local/projetoamd/registrar.pl <http://registrar.pl>
"${LINHACSV}" "Desligou")
exten => h,n(getout),Hangup()
exten => failed,1,Set(marca=1)
exten => failed,n,Noop(${REASON})
exten => failed,n,Verbose(hangupcause = ${HANGUPCAUSE})
exten => failed,n,GotoIf($["${REASON}" != "8"]?ocupado)
exten => failed,n,System(/usr/local/projetoamd/registrar.pl
<http://registrar.pl> "${LINHACSV}" "Maquina")
exten => failed,n,Hangup()
exten => failed,n(ocupado),GotoIf($["${REASON}" != "5"]?naoatendeu)
exten => failed,n,System(/usr/local/projetoamd/registrar.pl
<http://registrar.pl> "${LINHACSV}" "Ocupado")
exten => failed,n,Hangup()
exten => failed,n(naoatendeu),System(/usr/local/projetoamd/registrar.pl
<http://registrar.pl> "${LINHACSV}" "Cliente nao atendeu")
exten => failed,n,Hangup()
Obrigado.
Em 22 de maio de 2013 12:09, Fernando - NextBilling IP Solutions
<fernando em nextbilling.com.br <mailto:fernando em nextbilling.com.br> >
escreveu:
Posta a parte principal que realiza a chamada pra gente ver como você ta
gerando ela.
Posta também o seu callfile, pois deveria funcionar o hangupcause mesmo
através de callfile, já o fiz aqui, se você montar a lógica entre o callfile
e para onde ele envia a chamada depois de conectada tem que funcionar.
Atenciosamente,
Fernando da Silva Santos
CEO – Chief Executive Officer
NextBilling IP Solutions
SP: +55 (11) 3522-9200 <tel:%2B55%20%2811%29%203522-9200>
RJ: +55 (21) 4063-8854 <tel:%2B55%20%2821%29%204063-8854>
Tollfree: 0800 580-9200
<http://www.nextbilling.com.br/> http://www.nextbilling.com.br
De: asteriskbrasil-bounces em listas.asteriskbrasil.org
<mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org>
[mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org
<mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org> ] Em nome de Mike
Tesliuk
Enviada em: quarta-feira, 22 de maio de 2013 12:01
Para: asteriskbrasil em listas.asteriskbrasil.org
<mailto:asteriskbrasil em listas.asteriskbrasil.org>
Assunto: Re: [AsteriskBrasil] RES: Asterisk não detecta atendimento pela
operadora
parece erro de codec, veja os formatos que voce ta mandando e os que eles
aceitam, voce pode ver isso no debug
Em 22/05/13 10:41, Ronaldo Toledo escreveu:
Amigos, com as respostas recebidas imaginei que fosse uma questão de ir
atrás de uma variável que, usada no dialplan, contivesse o código de erro
sip. Tentei o HANGUPCAUSE (a versão do meu asterisk é 11.3.0) mas ela
estava vazia durante a execução da extension failed,1 (estou usando call
files).
Tentei usar o ${HASH(SIP_CAUSE,${CDR(dstchannel)})} e também não funcionou.
Depois de muito pesquisar descobri que elas se aplicam ao Hangup que se
segue a um Dial. Tive que mudar minha estratégia.
Minha aplicação previa o envio de uma série de call files ao Asterisk.
Prossegui com os call files para que fosse feita uma conexão fantasma só
para que o Asterisk, ao executar a extensão failed do contexto especificado,
fosse desviado para um outro contexto onde seria feita a ligação através de
Dial para o número passado via variável no call file.
Bem, aí veio o problema maior. Ao executar o
Dial(SIP/troncomeuprovedor/numero), invariavelmente recebo as mensagens
[May 22 05:21:35] NOTICE[16975][C-00000436]: chan_sip.c:29464
sip_request_call: Asked to get a channel of unsupported format (nothing)
while capability is (gsm|ulaw|alaw|h263|testlaw)
[May 22 05:21:35] WARNING[16975][C-00000436]: app_dial.c:2437
dial_exec_full: Unable to create channel of type 'SIP' (cause 58 - Bearer
capability not available)
Não consigo passar deste ponto
Continuo pesquisando via Google o que está errado mas se alguém já passou
por isso ou sabe a razão, por favor, jogue uma luz no assunto.
Em 21 de maio de 2013 21:59, Ronaldo Toledo <rtmorais em gmail.com
<mailto:rtmorais em gmail.com> > escreveu:
Fernando e Rafael, muito obrigado pelas respostas.
Liguei o debug(deveria ter feito isto antes, né?) e voilá: o tronco responde
503 (Service Unavailable).
Mais uma vez, muito obrigado.
Ronaldo Toledo.
Em 21 de maio de 2013 21:51, Fernando - NextBilling IP Solutions
<fernando em nextbilling.com.br <mailto:fernando em nextbilling.com.br> >
escreveu:
Ronaldo.
Nesses casos, geralmente o retorno é feito pelo seu tronco SIP, ou seja, o
Asterisk vai agir de acordo com o retorno que seu tronco SIP informar.
Já vi casos em que troncos SIP retornam SIP Reason 503 para números
inválidos, e já vi casos em que o tronco SIP retorna SIP 404 para para
números inválidos.
Eu sugiro a você analisar o siptrace do retorno do seu Tronco quando ligar
para esses números, pode ser um bom ponto de partida para analisar o que ele
realmente retorna.
Crusando essa informação com o ISDN Code de cada retorno, seria mais fácil
para você ter um ponto de partida.
Sip set debug peer NAME_DO_PEER ou sip set debug IP IP_DO_PEER
Atenciosamente,
Fernando da Silva Santos
CEO – Chief Executive Officer
NextBilling IP Solutions
SP: +55 (11) 3522-9200 <tel:%2B55%20%2811%29%203522-9200>
RJ: +55 (21) 4063-8854 <tel:%2B55%20%2821%29%204063-8854>
Tollfree: 0800 580-9200
<http://www.nextbilling.com.br/> http://www.nextbilling.com.br
De: asteriskbrasil-bounces em listas.asteriskbrasil.org
<mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org>
[mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org
<mailto:asteriskbrasil-bounces em listas.asteriskbrasil.org> ] Em nome de
Ronaldo Toledo
Enviada em: terça-feira, 21 de maio de 2013 20:20
Para: Alexandre Keller
Assunto: [AsteriskBrasil] Asterisk não detecta atendimento pela operadora
Olá.
Estou com um problema que já pesquisei aqui e ali: Tento ligar via tronco
SIP para uma série de números de telefones e a coisa vai bem até que
encontro pela frente números de telefones como (51)32216470
<tel:%2851%2932216470> E (51)32254067 <tel:%2851%2932254067> . O asterisk
assume um comportamento errático para eles, ora dá como ocupado(reason 8),
ora dá que não atendeu(reason 3). Se faço a ligação por meio de tel fixo ou
celular, o atendimento é feito pela operadora que sugere que o número não é
válido.
Por que o Asterisk não identifica o atendimento pela operadora? Alguém já
passou por este problema usando SIP?
Existe ocorrências reportando problemas de atendimento com placas digium,
digivoice etc..... mas não com SIP.
Ronaldo Toledo Morais.
_______________________________________________
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
<http://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
<http://www.aligera.com.br> .
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
<mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
_______________________________________________
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
<http://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
<http://www.aligera.com.br> .
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
<mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
_______________________________________________
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
<http://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
<http://www.aligera.com.br> .
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
<mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
_______________________________________________
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
<http://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
<http://www.aligera.com.br> .
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
<mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
_______________________________________________
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
<http://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
<http://www.aligera.com.br> .
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
<mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
_______________________________________________
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
<http://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
<http://www.aligera.com.br> .
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para
asteriskbrasil-unsubscribe em listas.asteriskbrasil.org
<mailto:asteriskbrasil-unsubscribe em listas.asteriskbrasil.org>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20130523/a737e285/attachment-0001.htm
Mais detalhes sobre a lista de discussão AsteriskBrasil