Hi,
We will pass this request along for more detailed IVR log files for the next update of our IVR platform.
As for why the IVR grammar is failing, you would have to replace the "$" in your IVR code with "SWI_literal". Also, "$singleNumber" would have to be changed to "singleNumber". Inside of your grammar header, you would have to specify the type as well to "application/srgs+xml".
So, basically, your IVR code should look like:
Code: Select all
<vxml version="2.0">
<form>
<field>
<grammar type="application/srgs+xml" version="1.0" root="getPin" mode="voice" tag-format="semantics/1.0">
<!-- Listen for confirmation number for old or new confirmations -->
<rule id="getPin" scope="public">
<ruleref uri="#hearPin" />
</rule>
<rule id="hearPin">
<tag> SWI_literal = "" ;</tag>
<item repeat="4-10">
<ruleref uri="#singleNumber"/>
<tag>SWI_literal = SWI_literal + singleNumber; </tag>
</item>
</rule>
<rule id="singleNumber">
<one-of >
<item>1 <tag>SWI_literal = "1"</tag></item>
<item>2 <tag>SWI_literal = "2"</tag></item>
<item>3 <tag>SWI_literal = "3"</tag></item>
<item>4 <tag>SWI_literal = "4"</tag></item>
<item>5 <tag>SWI_literal = "5"</tag></item>
<item>6 <tag>SWI_literal = "6"</tag></item>
<item>7 <tag>SWI_literal = "7"</tag></item>
<item>8 <tag>SWI_literal = "8"</tag></item>
<item>9 <tag>SWI_literal = "9"</tag></item>
<item>0 <tag>SWI_literal = "0"</tag></item>
</one-of>
</rule>
</grammar>
</field>
</form>
</vxml>
Just as a note, you could replace that
<grammar> using this
<field> tag:
Code: Select all
<field type="digits?minlength=4;maxlength=10">
This will allow you to say up to 4 to 10 digits as well.
Hope this helps.
Regards,
Plum Support