【发布时间】:2017-09-13 00:17:52
【问题描述】:
我需要帮助来确定 Asterisk IVR 上是否按下了 DTMF。 场景是: 我想根据是否按下 DTMF 来调用 AGI 脚本。如果按下 DTMF(IVR Menus),则无事可做。 如果没有按下 DTMF 调用和 AGI 并保存信息。
非常感谢任何帮助。
我正在使用 asterisk-11
【问题讨论】:
我需要帮助来确定 Asterisk IVR 上是否按下了 DTMF。 场景是: 我想根据是否按下 DTMF 来调用 AGI 脚本。如果按下 DTMF(IVR Menus),则无事可做。 如果没有按下 DTMF 调用和 AGI 并保存信息。
非常感谢任何帮助。
我正在使用 asterisk-11
【问题讨论】:
使用超时选项
[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"
【讨论】: