Como cortar una variable en el dialplan de Asterisk
Me preguntan como cortar una variable en el dialplan de Asterisk para hacer algo tan sencillo como que si el número es un fijo nacional (de España) y empieza por 9 lo mande por un troncal y si es un móvil que empieza por 6 lo mande por otro troncal (enlaces gsm).
Esto en Asterisk es muy fácil.
Supongamos que previamente en el dialplan hemos definido la variable de número a llamar en la variable TELF, like así:
exten => [69]XXXXXXXX,n,Set(TELF=${EXTEN})
Luego podríamos quedarnos con el primer número de la variable $TELF y decidir si sale por un lado o por otro:
exten => s,1,NoOp(Definimos si es una llamada a la exten SIP/moviles o SIP/fijos)
same => n,ExecIf($[${TELF:0:1} = 9]?Set(SIPTRUNK=SIP/fijos):Set(SIPTRUNK=SIP/moviles))
same => n,Dial(${SIPTRUNK}/${TELF},20)
Explico:
Fácil, no?



Comments are closed.