Asterisk
星號:讓 IVR 在使用者輸入時說出數字
我希望我的 IVR 在讀取命令期間說出數字。
這意味著,我不想在使用者輸入之後說數字,而是在使用者輸入期間說。
例如,輸入您的使用者程式碼:124567#
在此期間,我希望 IVR 一個一個說出數字。類似於:您輸入了 1 ,您輸入了 2 或 ONE、TWO、…
我知道使用循環可以做到這一點,但這看起來像一個不穩定的程式碼。
當您播放消息時,在大多數情況下會影響 dtmf 辨識。只有當使用者通過數字協議(sip/iax2)從數字電話呼叫時才不會影響。如果使用者撥打 PSTN 線,則兩個方向的聲音通過同一根線走,結果播放可能比 dtmf 響亮或具有相似的頻率,這將影響辨識。
但如果仍然想這樣做,你有兩個選擇
使用者了解功能,請慢慢按下。如果是這樣,您可以使用將數字限制設置為 1 的讀取命令,然後再使用帶有文件的讀取命令,其中包含前一個數字等。限制:載入的盒子上的數字之間至少有 100 毫秒,如果沒有載入,可以更少。
使用者不知道。您需要了解 c/c++,閱讀星號源(app_read.c 已經足夠)並編寫其他將同時等待數字和播放數字的應用程序。接縫並不復雜,但請參閱有關辨識的說明。