2017-09-13 2 views
0

J'ai besoin d'aide pour identifier que DTMF est pressé ou non sur l'Asterisk IVR. Le scénario est: Je souhaite appeler un script AGI en appuyant sur DTMF ou non. Si DTMF (menus RVI) est pressé rien à faire. Si vous n'appuyez pas sur DTMF, appelez et AGI et enregistrez les informations.Identifier DTMF est pressé ou non sur Asterisk IVR

Toute aide est fortement appréciée.

J'utilise astérisque-11

Répondre

0

option Utiliser délai

[mainmenu] 
    exten => s,1,Answer 
    exten => s,2,SetMusicOnHold(default) 
    exten => s,3,DigitTimeout,5 
    exten => s,4,ResponseTimeout,10 
    ;SAI menu - 1 for tech support, 2 for voicemail, 3 for echo test 
    exten => s,5,Background(sai-welcome) 
    exten => s,6,Background(sai-choose) 

    ; Tech Support 
    exten => 1,1,AGI(dima-test.agi) 
    exten => 1,2,SetGlobalVar(ACCOUNTCODE=${callerid}) 
    exten => 1,3,SetVar(testcallerid=${callerid}) 
    exten => 1,4,Background(sai-reptech-welcome) 
    exten => 1,5,Queue(rep-tech) 

    ; Leave Voicemail 
    exten => 2,1,VoicemailMain() 
    exten => 2,2,Hangup 


    ; Play Music-on-Hold 
    exten => 5,1,MusicOnHold(default) 
    exten => 5,2,Goto(mainmenu,s,6) 
    ; #=hangup 
    exten => #,1,Playback(sai-thanks) 
    exten => #,2,Hangup 

    exten => t,1,Goto(#,1)   ; If they take too long, give up 
    exten => i,1,Playback(invalid) ; "That's not valid, try again"