IVR系統默認的配置文件為/usr/local/freeswitch/conf/autoload_configs/ivr.conf.xml
<include>
<menus>
<menu name="welcome"
greet-long="/usr/local/freeswitch/sounds/welcome.wav"
greet-short="/usr/local/freeswitch/sounds/morning.wav" #一定要注意錄音文件的路徑
invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
exit-sound="voicemail/vm-goodbye.wav"
timeout="15000"
max-failures="3"
max-timeouts="3"
inter-digit-timeout="2000"
digit-len="4">
<entry action="menu-exec-app" digits="0" param="transfer 1000 XML default"/>
<entry action="menu-exec-app" digits="/^(10[01][0-9])$/" param="transfer $1 XML default"/>
<menu>
<menus>
<include>
實現撥打4321號碼,轉到IVR流程
編輯/usr/local/freeswitch/conf/dialplan/default.xml 新增如下代碼
<extension name="incoming_ivr">
<condition field="destination_number" expression="^4321$">
<action application="answer"/>
<action application="sleep" data="2000"/>
<action application="ivr" data="welcome"/>
</condition>
</extension>
greet-long:指定最開始的歡迎詞,該語音文件默認位置應該是在/usr/local/freeswitch/sounds目錄下;
greet-short:該項指定一個簡短的提示音,如果用戶長時間沒有哦按鍵,則應重新提示撥號;
invalid-sound:如果用戶按錯了鍵,則會使用該提示;
exit-sound:該項指定最后菜單退出是(一般是超時沒有按鍵)的聲音;
timeout:指定超時時間(毫秒),即多長時間沒有收到按鍵就超時,播放其他提示音;
max-failures:為容忍用戶按鍵錯誤的次數;
max-timeouts:即最大超時次數;
inter-digit-timeout:為兩次按鍵的最大間隔(毫秒);
digit-len:說明菜單項的長度,即最大收號位數。
按時間進線路由
<extension name="time_based_ivr">
<condition wday="2-6" hour="8:30-17:30">
<action application="ivr" data="ivr_day"/>
<anti-action application="ivr" data="ivr_night"/>
</condition>
</extension>
wday表示星期(星期日的值為“0“,故周一到五則的值用“2-6”表示)
使用sound_prefix,播放中文語音
修改/usr/local/freeswitch/conf/vars.xml為
<X-PRE-PROCESS cmd="set" data="sound_prefix=$${sounds_dir}/zh/cn/link"/>
