DISA function
From Wildix
Il servizio DISA propone all'utente chiamante di inserire un numero dopo il beep
Waitexten fa un goto a "contestocorrente|extensione|priorità"
se si mette timeout 2 è necessario dopo il beep insreire entro 2 secondi una cifra altimenti va in timeout
(timeout io non ho provato a gestirlo quindi credo sia per questo che mi fiisce in invalid)
Per come è fatta la funzione conviene mettere un filtro estensione particolare in lettere per la raccolta cifre
ed altri filtri estensione per raccogliere il goto eseguito da waitexen
Conviene mettere filtri estensione goto il più specifici possibile magari con un numero di casratteri fisso. In questo modo la funzione diventerà molto molto
più veloce e non aspetterà lunghi timeout per "scegliere il filtro estensione"
Implementazione del servizio
Creare un contesto di nome DISA inserendo del codice analogo a quello in grassetto che segue.
disaexten,1,Answer()
disaexten,2,background(beep)
disaexten,3,waitexten(2)
disaexten,4,HangUp
; se l'utente ha inserito un numero fra 200-299 viene eseguito un goto a tale estensione
_2XX,1,goto(users|${EXTEN}|1)
;se l'utente ha inserito un numero che comincia con 3 questo numero viene chiamato (ad esempio va bene ;per creare un "gateway" di chiamate verso cellulari ;le performance tipicamente migliorano usando un pattern a numero di cifre noto. ES:3XXXXXXXXX
_3.,1,goto(users|${EXTEN}|1)
Richiamare il servizio DISA
Per richiamare il servizio DISA da un qualsiasi punto del codice è sufficiente fare un goto(DISA|disaexten|1) nel modo seguente:
_X.,1,goto(DISA|disaexten|1)
