在星號的撥號方案爲什麼如此當DTMF輸入是兩個或更多的數字,並且如果一個數字是 按下時正被播放的提示它進入我延伸(無效擴展)作爲 情況如果在播放提示時按下數字,則會輸入一個數字的dtmf輸入,它會將 移動到右側的擴展名中?謝謝多個DTMF輸入
1
A
回答
0
這將取決於您的配置圖的配置方式,但聽起來好像您正在使用background()應用程序。 Background()將偵聽DTMF,然後在第一個明確的匹配中路由到當前上下文中的擴展。
例如,如果在上下文中有1,2和100,那麼按2將直接路由到2(因爲它是明確的)。按1將等待超時,因爲background()不知道你是否要去到1或100.超時後,它將路由到1.按3將轉到i特殊分機,因爲當前上下文中沒有以3開頭的分機。
如果所需行爲是從您的路由IVR上下文內部的手機之一,那麼你需要包括IVR上下文中的手機背景:
[phones]
exten => 100,1,Dial(SIP/phone1)
exten => 101,1,Dial(SIP/phone2)
...
[IVR]
exten => s,1,Background(message)
exten => 1,1,Queue(Sales)
exten => 2,1,Queue(Support)
exten => i,1,Playback(pbx-invalid)
include => phones
官方文檔中的更多信息: https://wiki.asterisk.org/wiki/display/AST/Application_BackGround
3
下面是另一個例子,其中一個用戶必須輸入4位PIN碼的撥號方案繼續:
[Login]
exten = s,1,Playback(/var/lib/asterisk/sounds/custom/login)
exten = s,n,Set(rightPIN=1234)
exten = s,n,Read(inPIN,/var/lib/asterisk/sounds/custom/enterPIN,4)
exten = s,n,GotoIf($["${inPIN}" = "${rightPIN}"]?pin-accepted,1)
; Didn't go to pin-accepted, so play badPIN and hangup
exten = s,n,Playback(/var/lib/asterisk/sounds/custom/badPINgoodbye)
exten = s,n,Hangup()
; correct pin, play something
exten = pin-accepted,1,Playback(/var/lib/asterisk/sounds/custom/something)
...
讀()應用程序的第三個參數是多少位等待。有關了解更多信息,請參閱Asterisk Wiki: Read
編輯:還有一個叫Authenticate撥號方案的應用程序,做到這一點非常好。
0
我建議你閱讀本開始:
http://astbook.asteriskdocs.org/en/2nd_Edition/asterisk-book-html-chunk/asterisk-CHP-5-SECT-1.html
或ORelly的書 「Asterisk的電話的未來。」
相關問題
- 1. 發送暫停和DTMF輸入的Android
- 2. 定義爲leave_conference的多個DTMF
- 3. 多個輸入
- 4. HandBrake;多個輸入
- 5. 多個輸入C
- 6. 多個MySQL輸入
- 7. Zclip多個輸入
- 8. ajaxfileupload多個輸入
- 9. 從多個輸入
- 10. 一個多輸入
- 11. laravel插入多個輸入
- 12. 多個輸入插入
- 13. 如何從Perl進行SIP調用並接收DTMF輸入?
- 14. 用多個輸入框按'輸入'
- 15. 多個輸入與proc_open()
- 16. HTML輸入多個標記
- 17. jQuery多個輸入變化
- 18. jQuery:輸入多個值
- 19. EmrActivity的多個輸入
- 20. JOptionPane.showInputDialog中的多個輸入
- 21. 函數的多個輸入
- 22. 破滅多個輸入
- 23. Excel中從多個輸入
- 24. 一個「CIN」多輸入
- 25. 添加多個輸入
- 26. Elm中的多個輸入?
- 27. 返回多個輸入(Python)
- 28. Bootbox中的多個輸入
- 29. 多個輸入設備
- 30. 從多個輸入Laravel 5