我试图通过手机输入出生日期为11211971
,但IVR(交互式语音应答)有11121197
。
请告诉任何人这个问题的根本原因是什么
这是我的代码
exten => s,n,Read(dateofbirth,${ANOUNCEMENT_RECORDINGS}/HIP-5A1,8,s)
exten => s,n,GotoIf($["${dateofbirth}" = ""]?retry-dateofbirth-notentered)
exten => s,n,Set(monthofbirth=${dateofbirth:0:2})
exten => s,n,Set(dayofbirth=${dateofbirth:2:2})
exten => s,n,Set(yearofbirth=${dateofbirth:4:4})
exten => s,n,Goto(${IF($[$[${LEN(${monthofbirth})} != 2]|$[${monthofbirth} > 12] |$["${monthofbirth}" ="00"]|$["${monthofbirth}" ="**"]|$[${LEN(${dayofbirth})}!=2]|$[${dayofbirth} > 31]|$["${dayofbirth}" ="00"]|$["${dayofbirth}" ="**"]|$[${LEN(${yearofbirth})} !=4]|$["${yearofbirth}" ="0000"]|$["${yearofbirth}" ="****"]]?retry-dateofbirth-invalid:saydateofbirth)})
我的假设是,如果您从DID调用并进入DTMF,那么DTMF接收或DTMF协商在星号侧可能存在一些问题,您需要将relaxdtmf=yes, rfc2833补偿=yes和dtmfmode=rfc2833,如果您的提供商支持它。
如果您是从软电话呼叫,请尝试在软电话或sip硬电话中启用DTMF类型。