[AsteriskBrasil] Uso do AEL no dialplan

Tarik Gregorio tgregorio7 em gmail.com
Sexta Maio 16 22:01:03 BRT 2008


Eh ael ou ael2?

Abs,

2008/5/16, Diego Aguirre (DagMoller) <dag.voip em oi.com.br>:
>
> Srs,
>
> para poder conhecer o poder do AEL no asterisk, vejam o que é possível
> fazer...
> esse exten faz uma busca no e164.org (ENUMLOOKUP).
>
> context enum
> {
>         _164XXXXXXXX   => goto 1645521${EXTEN:3}|1;
>         _164XXXXXXXXXX => goto 16455${EXTEN:3}|1;
>         _164. => {
>                 if ("x${ENUMCALLERID}" != "x")
>                         Set(CALLERID(all)=${ENUMCALLERID});
>
>                 Set(dialto="");
>                 Set(number=${EXTEN:3});
>
>                 // Buscar registros SIP/IAX
>                 Set(numreg=${ENUMLOOKUP(+${number},ALL,c,,e164.org)});
>                 if (${numreg} > 0)
>                 {
>                         // Se existir 1 ou mais registro ENUM, faz um loop
> buscando por SIP e IAX
>                         for (i = 1; ${i} <= ${numreg}; i = ${i} + 1)
>                         {
>                                 Set(dialstr="");
>                                 Set(info=${ENUMLOOKUP(+${number},ALL,,${i},
> e164.org)});
>                                 Set(tech=${CUT(info,:,1)});
>
>                                 switch (${tech})
>                                 {
>                                         case sip:
>
>                                                 Set(dialstr="SIP/${info:4}");
>                                                 break;
>
>                                         case iax2:
>
>                                                 Set(dialstr="IAX2/${info:5}");
>                                                 break;
>
>                                         default:
>                                                 break;
>                                 }
>
>                                 if ("x${dialstr}" != "x")
>                                 {
>                                         // Se encontrar SIP ou IAX, apenda
> na string que será usada no Dial()
>                                         if ("x${dialto}" != "x")
>
>                                                 Set(dialto="${dialto}&${dialstr}");
>                                         else
>                                                 Set(dialto="${dialstr}");
>                                 }
>                         }
>                 }
>                 // Discagem
>                 if ("x${dialto}" != "x")
>                 {
>                         ChanIsAvail(${dialto});
>                         if ("x${AVAILORIGCHAN}" != "x")
>                                 Dial(${AVAILORIGCHAN},,T);
>                 }
>                 Hangup();
>         }
> }
>
> --
> Diego Aguirre
> Infodag - Informática
> FWD#: 459696
> EnumLookup#: +55 21 8138-2710
> DUNDi-br#: 21 8138-2710
> _______________________________________________
> Compre uma camiseta da AsteriskBrasil.org!
>             http://www.voipmania.com.br
>                 == VoIPMania.com.br ==
>
> _______________________________________________
> Lista de discussões AsteriskBrasil.org
> AsteriskBrasil em listas.asteriskbrasil.org
> http://listas.asteriskbrasil.org/mailman/listinfo/asteriskbrasil
>



-- 
Tarik Faria da Silva Gregorio
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://listas.asteriskbrasil.org/pipermail/asteriskbrasil/attachments/20080516/bcb21175/attachment-0001.htm 


More information about the AsteriskBrasil mailing list