lunes, 10 de diciembre de 2012


USO DE VARIABLES

exten => 301,1,Set(LEIF=SIP/1000)
same => n,Dial(${LEIF})

Si se va a referenciar el nombre de la variable, en este caso será LEIF
Si se va a referenciar el contenido del valor, en este caso será ${LEIF}

Asterisk maneja 3 tipos de variables:

-Variables Globales: Pueden ser declaradas dentro del contexto [globals] al principio del archivo extensions.conf
[globals]
LEIF=SIP/1000

-variables de canal: Variable asociada con una llamada en particular, definida solamente mientras dura la llamada. Son configuradas con la aplicación set()

exten => 202,1,Set(MagicNumber=42)
same => n,SayNumber(${MagicNumber})

-Variables de ambiente: se utilizan para leer la variables del sistema (Linux). Para crearlas se utiliza la aplicación set() y la función del dialplan env(). No son muy utilizadas en el dialplan de Asterisk


Agregando variables al dialplan
[globals]
LEIF=SIP/1000
JIM=SIP/1001
RUSSELL=SIP/1002

[LocalSets]
exten => 1000,1,Dial(${LEIF})
exten => leif,1,Dial(${LEIF})

exten => 1001,1,Dial(${JIM})
exten => jim,1,Dial(${JIM})

exten => 1002,1,Dial(${RUSSELL})
exten => russell,1,Dial(${RUSSELL})

exten => 201,1,Goto(TestMenu,start,1)

[TestMenu]
exten => start,1,Answer()
same => n,Background(enter-ext-of-person)
same => n,WaitExten()

exten => 1,1,Dial(SIP/1000,10)
same => n,Playback(vm-nobodyavail)
same => n,Hangup()

exten => 2,1,Dial(SIP/1001,10)
same => n,Playback(vm-nobodyavail)
same => n,Hangup()

exten => i,1,Playback(pbx-invalid)
same => n,Goto(incoming,123,1)

exten => t,1,Playback(vm-goodbye)
same => n,Hangup()

En el siguiente vídeo se muestra la configuracion: Variables DialPlan

No hay comentarios:

Publicar un comentario