如果XML IVR中没有来自用户的DTMF,如何将呼叫路由到分机?
我正在用xml编写IVR,在应用这段代码之后,我得到了在播放主菜单后,当我按下数字3并进入第二个菜单(SPG_IVR_子菜单)时,如果我不按下任何数字,它将再次重放主菜单,但我正在尝试,如果我不按下第二个菜单中的任何数字,则调用routs到844分机。但如果用户未在(SPG_ivr_子菜单)中插入任何DTMF,则使用此代码会重复主菜单。请告诉我这个代码有什么问题,我应该怎么做才能准确地配置呼叫路由如果XML IVR中没有来自用户的DTMF,如何将呼叫路由到分机?,xml,scripting,ivr,Xml,Scripting,Ivr,我正在用xml编写IVR,在应用这段代码之后,我得到了在播放主菜单后,当我按下数字3并进入第二个菜单(SPG_IVR_子菜单)时,如果我不按下任何数字,它将再次重放主菜单,但我正在尝试,如果我不按下第二个菜单中的任何数字,则调用routs到844分机。但如果用户未在(SPG_ivr_子菜单)中插入任何DTMF,则使用此代码会重复主菜单。请告诉我这个代码有什么问题,我应该怎么做才能准确地配置呼叫路由 <include> <!-- demo IVR setup --&g
<include>
<!-- demo IVR setup -->
<!-- demo IVR, Main Menu -->
<menu name="demo_ivr"
greet-long="/var/sipxdata/mediaserver/data/ivrscript/CoralIVR/prompts/coral.wav"
greet- short="/var/sipxdata/mediaserver/data/ivrscript/CoralIVR/prompts/coral.wav"
invalid-sound="/var/sipxdata/mediaserver/data/ivrscript/CoralIVR/prompts/is_invalid.wav"
exit-sound="/var/sipxdata/mediaserver/data/ivrscript/CoralIVR/prompts/ExitTone.wav"
confirm-macro=""
confirm-key=""
tts-engine="flite"
tts-voice="rms"
confirm-attempts="1"
timeout="10000"
inter-digit-timeout="2000"
max-failures="1"
max-timeouts="1"
digit-len="4">
<!-- The following are the definitions for the digits the user dials -->
<!-- Digit 1 transfer caller to the public FreeSWITCH conference -->
<entry action="menu-sub" digits="3" param="SPG_ivr_submenu"/>
<entry action="menu-sub" digits="2" param="support_ivr_submenu"/>
<entry action="menu-sub" digits="1" param="corporate_ivr_submenu"/>
<entry action="menu-sub" digits="4" param="delhiBranch_ivr_submenu"/>
<entry action="menu-sub" digits="5" param="erp_ivr_submenu"/>
<entry action="menu-top" digits="*"/> <!-- Repeat this menu -->
</menu>
<!-- The demo IVR sub menu prompt basically just says, "press star to return to previous menu..." -->
<entry action="menu-exec-app" digits="1" param="set ringback=$${us-ring}"/>
<entry action="menu-exec-app" digits="1" param="bridge sofia/$${domain}/813@192.168.1.240"/>
<entry action="menu-exec-app" digits="2" param="set ringback=$${us-ring}"/>
<entry action="menu-exec-app" digits="2" param="bridge sofia/$${domain}/819@192.168.1.240"/>
<entry action="menu-top" digits="*"/>
<!-- <entry action="menu-exec-app" digits=xsi:nil="true" param="bridge sofia/$${domain}/844@192.168.1.240"/> -->
</menu>
<extension name="ext_SPG_ivr_submenu">
<condition field="destination_number" expression="^844$">
<action application="set" data="hangup_after_bridge=true"/>
<action application="ivr" data="SPG_ivr_submenu"/>
<action application="bridge" data="sofia/$${domain}/844@192.168.1.240"/>
</condition>
</extension>
</include>
<!-- The demo IVR sub menu prompt basically just says, "press star to return to previous menu..." -->
<entry action="menu-exec-app" digits="1" param="set ringback=$${us-ring}"/>
<entry action="menu-exec-app" digits="1" param="bridge sofia/$${domain}/813@192.168.1.240"/>
<entry action="menu-exec-app" digits="2" param="set ringback=$${us-ring}"/>
<entry action="menu-exec-app" digits="2" param="bridge sofia/$${domain}/819@192.168.1.240"/>
<entry action="menu-top" digits="*"/>
<!-- <entry action="menu-exec-app" digits=xsi:nil="true" param="bridge sofia/$${domain}/844@192.168.1.240"/> -->
</menu>
<extension name="ext_SPG_ivr_submenu">
<condition field="destination_number" expression="^844$">
<action application="set" data="hangup_after_bridge=true"/>
<action application="ivr" data="SPG_ivr_submenu"/>
<action application="bridge" data="sofia/$${domain}/844@192.168.1.240"/>
</condition>
</extension>
</include>
这是什么IVR平台?这不是标准的VoiceXML。VoiceXML的menu元素没有显示的所有属性,它使用choice元素而不是entry元素。在VoiceXML中,您可以使用菜单中的noinput元素来处理调用方未提供任何输入的事件。实际上,这是freeswitch的简单xml ivr脚本。你可以在……看到它。。。。。