freeswitch按键自适应测试

1.概述
因部分运营商dtmf格式不支持rfc2833,导致平台和用户侧协商成为rfc2833格式,运营商侧送过来格式为inband,但平台没有进行转换的配置。所以给用户侧送去的依然为inband格式,导致用户侧不识别,特此对平台数据进行调整。
2.测试拓扑图
freeswitch按键自适应测试
3.测试步骤
3.1.调整sip-p
主叫设置为05319999999,被叫设置为:1000,通过sip-p外呼送到172.17.46.9的5070端口。
172.17.46.9设备上在vars.xml上将X-PRE-PROCESS cmd=“set” data=“rtp_liberal_dtmf=true”/修改为 X-PRE-PROCESS cmd=“set” data=“rtp_liberal_dtmf=false”/,Dialplan设置被叫为1000的送到172.17.46.31的5070端口上。
在172.17.46.31上的dialplan上配置
extension name=“CHECK_DTMF” continue=“true”
condition field="${switch_r_sdp}" expression=“a=rtpmap:(\d+)\stelephone-event/8000” break=“never”
anti-action application=“start_dtmf”/
/condition
/extension
是为了判断运营商侧送来的invite是否携带了telephone-event字段,若未携带,开启start_dtmf按键检测模式,协商为inband,将此条命令写在dialplan文件内的最上面。
在vars.xml上将 X-PRE-PROCESS cmd=“set” data=“rtp_liberal_dtmf=true”/修改为 X-PRE-PROCESS cmd=“set” data=“rtp_liberal_dtmf=false”/,然后送至下一台设备。
在172.17.46.12上将被叫1000的号码送至软电话上,软电话接起听到一段IVR和一个按键声音,即为正常。