vXML 号码回读错误

vXML number readback error

答案:<say-as interpret-as="number_digit">https://msdn.microsoft.com/en-us/library/dd450828(v=office.13).aspx

我有一个简单的字段(如下所示)来收集呼叫者的 9 位帐号。

它可以正常工作,因为它会收集数字并读回。我的问题是当它读回数字时,它认为它是一个整数。例如,如果他们输入 111111111,它会显示为 111,111,111(一亿一千一百万......等等)

显然我希望它一次读回一位数字,例如:

"You entered 1, 2, 3, ect. "

这是我的简单代码:

<field name="accountnumber" type="digits?minlength=9;maxlength=9">            
    <prompt>
What is your 9 digit account number
</prompt>         
    <filled>            
                <prompt>  You said <value expr="accountnumber"/> </prompt>
    </filled>
</field>

您需要将 <value> 放在 <say-as> 标签内:

<say-as interpret-as="digits">
  <value expr="accountnumber"/>
</say-as>

interpret-as 属性可能在某种程度上取决于您的 VXML 引擎支持的内容。例如,Voxeo 使用 "digits",Microsoft 似乎使用 "number:digit",而 SSML 1.0 规范说 "characters"。有些还使用属性 type 而不是 interpret-as.