Определите, нажат ли DTMF или нет на Asterisk IVR

Мне нужна помощь, чтобы определить, нажат ли DTMF на Asterisk IVR. Сценарий такой: я хочу вызвать AGI-скрипт на основе нажатого DTMF или нет. Если нажать DTMF (меню IVR), ничего не сделать. Если DTMF не нажат, вызовите и AGI и сохраните информацию.

Любая помощь высоко ценится.

Я использую звездочку-11


person Vijay    schedule 13.09.2017    source источник


Ответы (1)


Использовать тайм-аут

[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"
person arheops    schedule 13.09.2017