[AsteriskBrasil] Nível dentro de contexto

Hudson Cardoso hudsoncardoso em hotmail.com
Segunda Setembro 16 02:29:35 BRT 2013


   Colegas, descobri o problema, seguindo o debug full, salientado pelo Marcio, vi que no ladoasterisk ele aceitava todas as cifras,  e no channel.c também não havia erros, então o erroestava na lógica, com certeza, reavaliei melhor o código, e percebi que faltou uma regra, essa:"if (${desviado}!=5 & ${LEN(${desviado})}>4) goto todos,${desviado},1;"   Que originalmente não tinha o comparativo de tamanho, pra manter o dialplan na espera deum novo dígito, encerrando como não encontrado. pois ja estava com as variáveis setadas noinício do canal.

Hudson 
(048) 8413-7000
Para quem nao cre, nenhuma prova converte,Para aquele que cre, nenhuma prova precisa. 

Date: Sun, 15 Sep 2013 08:25:56 -0400
From: marciorp em gmail.com
To: asteriskbrasil em listas.asteriskbrasil.org
Subject: Re: [AsteriskBrasil] Nível dentro de contexto

Hudson, to no celular, mas terça consigo ver pra ti.
Enquanto isso, ativa o debug e full log, simula o erro e posta os logs só do problema.
Usa level 3.
[...]'s
Marcio
========================================

########### Campanha Ajude o Marcio! ###########

http://sosmarcio.blogspot.com.br/

http://www.vakinha.com.br/VaquinhaP.aspx?e=195793

========================================
Em 15/09/2013 06:53, "Hudson Cardoso" <hudsoncardoso em hotmail.com> escreveu:




   Colegas, tem uma coisa que ta me dando no nos meus cabelos brancos.   Não sei se estou fazendo errado, ou se isso é um Bug.
algumas vezes o Asterisk faz a transferência corretamente, e em outras só permite umaunica transferência, todas dentro do mesmo contexto, depois que fiz a alteração abaixo
ficou da seguinte forma, se eu usar o 15XX, transfere numa boa, e a partir disso, aceita qualquer modo de transferência infinitas vezes, mas se a primeira opção for 5XX, entãoele só transfere uma unica vez, dando erro em qualquer outra tentativa, inclusive a 15XX.
   O Marcelo Terres, indicou usar o __TRANSFER_CONTEXT, mas eu não conseguientender muito bem como isso funciona, alguém sabe?.

 _15XX => dial(sip/481992${EXTEN:2},90,tT); _5XX => { set(id=${CALLERID(num)});                set(categoriaconta=${ODBC_LECATEGORIACONTA(${id})});
                if (${categoriaconta}>=1) {set(tamanho=${LEN(${EXTEN:1})});                                                            set(discar=${id:0:$[8-${tamanho}]}${EXTEN:1});                                                            set(desviado=${ODBC_LEDESVIO(${discar})});
                                                            if (${desviado}=0) dial(sip/${discar},90,TS(3600));                                                            if (${desviado}!=0 & ${desviado:0:1}=5)                            {set(tamanho=${LEN(${desviado:1})});
  set(discar=${id:0:$[8-${tamanho}]}${desviado:1});  dial(sip/${discar},90,TS(3600));}                                                            if (${desviado}!=5) goto todos,${desviado},1;
                                                            if (${ISNULL(${desviado})}=1) {dial(sip/${discar},90,TS(3600));}                                                            }                       }


Hudson 
(048) 8413-7000
Para quem nao cre, nenhuma prova converte,Para aquele que cre, nenhuma prova precisa. 


From: hudsoncardoso em hotmail.com
To: asteriskbrasil em listas.asteriskbrasil.org

Date: Sat, 14 Sep 2013 21:13:34 +0000
Subject: Re: [AsteriskBrasil] Nível dentro de contexto




   Não achei muita documentação sobre o "__TRANSFER_CONTEXT" , sabe me dizer mais alguma coisa sobre ele ?
resolvi 90% do meu problema com o codigo abaixo, mas na segunda transferência ele dá problema. 

            _5. => {  set(id=${CALLERID(num)});
                           noop(tarnsferindo    motivo =${motivo}   valor=${valorlig}  numero=${id});                           set(categoriaconta=${ODBC_LECATEGORIACONTA(${id})});                           if (${categoriaconta}>=1) {set(tamanho=${LEN(${EXTEN:1})});
                                                            set(discar=${id:0:$[8-${tamanho}]}${EXTEN:1});                                                            set(desviado=${ODBC_LEDESVIO(${discar})});
                                                            if (${desviado}=0) dial(sip/${discar},90,TS(3600));                                                            if (${desviado}!=0 & ${desviado:0:1}=5) {set(tamanho=${LEN(${desviado:1})});
                                                                                            set(discar=${id:0:$[8-${tamanho}]}${desviado:1});                                                                                            dial(sip/${discar},90,TS(3600));}
                                                            if (${desviado}!=5) goto todos,${desviado},1;                                                            if (${ISNULL(${desviado})}=1) {dial(sip/${discar},90,TS(3600));}
                                                            }                           noop(motivo =${motivo}   valor=${valorlig}  numero=${id});                       }


Hudson 
(048) 8413-7000
Para quem nao cre, nenhuma prova converte,Para aquele que cre, nenhuma prova precisa. 


From: mhterres em gmail.com
Date: Fri, 6 Sep 2013 13:37:18 -0300
To: asteriskbrasil em listas.asteriskbrasil.org

Subject: Re: [AsteriskBrasil] Nível dentro de contexto

O Set(__TRANSFER_CONTEXT=<teucontexto>) acho que faz o que tu quer.
 
[]s
Marcelo H. Terres
mhterres em gmail.com

http://mundoopensource.blogspot.com
http://biertasters.blogspot.com
http://twitter.com/mhterres

 
 
2013/9/6 Hudson Cardoso <hudsoncardoso em hotmail.com>:
>    Colegas...
>    Gostaria de saber como se faz pra usar transferência de chamadas em

> contexto diferentes.
> ex:
>
> context ddi{
>     _00X.=>  {&discaddi(${EXTEN},${EXTEN});}
>     includes {dddcelular;}}
>
> context dddcelular{
>     _0XX[789]X.=>  {&discamovel(${EXTEN},${EXTEN:1});}

>     includes {dddfixo;}}
>
> context dddfixo{
>     _0XX[2345]XXXXXXX=> {&discafixo(${EXTEN},${EXTEN:1});}
>     includes {celularlocal;}}
>
> context celularlocal{
>     _[789]XXXXXXX => {&discamovel(${EXTEN},48${EXTEN});}

>     includes {fixolocal;}}
>
> context fixolocal{
>     _[2345]XXXXXXX =>  {&discafixo(${EXTEN},48${EXTEN});}
>
>    O problema é que quando tento transferir para um ramal, vem uma mensagem

> do Ast
> dizendo não ser possivel dentro do contexto.
>    Como se contorna isso?
>
>
>
> Hudson
> (048) 8413-7000

> Para quem nao cre, nenhuma prova converte,Para aquele que cre, nenhuma prova
> precisa.
>
>
> _______________________________________________
> 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.
> _______________________________________________

> 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.

> _______________________________________________
> Para remover seu email desta lista, basta enviar um email em branco para
> 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.
_______________________________________________
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.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para 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.
_______________________________________________
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.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para 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.

_______________________________________________

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.

_______________________________________________

Para remover seu email desta lista, basta enviar um email em branco para 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.
_______________________________________________
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.
_______________________________________________
Para remover seu email desta lista, basta enviar um email em branco para asteriskbrasil-unsubscribe em listas.asteriskbrasil.org 		 	   		  
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20130916/585601d0/attachment-0001.htm 


Mais detalhes sobre a lista de discussão AsteriskBrasil