Buenas tardes,
Estoy buscando ayuda con la programación de un dialplan customizado. Tengo varias semanas buscando por todo internet diferentes soluciones sin poder lograr lo que estoy buscando.
Explico rápidamente para ver si alguien me puede dar una guía.
Tengo dos extensiones 20003 y 20004 cada una en un contexto diferente. Cada contexto tiene un AGI que consulta a una base de datos y retorna la información en el respectivo idioma (ES y US).
El dial plan funciona perfecto hasta cuando le doy la opción de 7 para repetir o 9 para salir.
El dialplan (20003) funciona bien pero en el dialplan (20004) al presionar 7 o 9 se salta al contexto del dialplan (20003).
Adjunto ejemplo de los dialplan
Cualquier guía es sumamente agradecida.
[IVR-ES]
exten => 20003,1,Answer
same => n,Set(CHANNEL(language)=es)
same => n,AGI(/var/lib/asterisk/agi-bin/infoUS.php)
same => n,Playback(${fileDollarsses})
same => n,Playback(DollarsWithes)
same => n,Playback(${fileCentavoses})
same => n,Playback(Centsses)
same => n(loop3),Background(IvrExitInglesMenu)
same => n,WaitExten(3)
exten => 7,1,Playback(${fileDollarsses})
exten => 7,2,Playback(DollarsWith)
exten => 7,3,Playback(${fileCentavoses})
exten => 7,4,Playback(Centsses)
exten => 7,5,Goto(IVR-US,20003,loop3)
exten => 9,1,Playback(despedidadeIVR)
exten => 9,n,System(rm /var/lib/asterisk/sounds/${fileDollardelus})
exten => 9,n,System(rm /var/lib/asterisk/sounds/${fileCentavosdelus})
exten => 9,n,Hangup
exten => i,1,Goto(20003,loop3)
exten => t,1,Goto(20003,loop3)
exten => 20003,n,Hangup
[IVR-US]
exten => 20004,1,Answer
same => n,Set(CHANNEL(language)=us)
same => n,AGI(/var/lib/asterisk/agi-bin/infoUS.php)
same => n,Playback(${fileDollarssus})
same => n,Playback(DollarsWith)
;same => n,Playback(cones)
same => n,Playback(${fileCentavosus})
same => n,Playback(Centss)
same => n(loop3),Background(IvrExitInglesMenu)
same => n,WaitExten(3)
exten => 7,1,Playback(${fileDollarssus})
exten => 7,2,Playback(DollarsWith)
exten => 7,3,Playback(${fileCentavosus})
exten => 7,4,Playback(Centss)
exten => 7,5,Goto(IVR-US,20004,loop3)
exten => 9,1,Playback(despedidadeIVR)
exten => 9,n,System(rm /var/lib/asterisk/sounds/${fileDollardelus})
exten => 9,n,System(rm /var/lib/asterisk/sounds/${fileCentavosdelus})
exten => 9,n,Hangup
exten => i,1,Goto(20004,loop3)
exten => t,1,Goto(20004,loop3)
exten => 20004,n,Hangup