I'm looking for a way to build a VXML grammar that requires a certain number of digits to be entered, but also requires that the input is not all zeros.
The use case for this is bank numbers. For example, I would like to force an input (voice or DTMF, doesn't matter) of 9 digits for routing numbers but require that not all digits are zero. (Disregard the modulus check for the moment, I'm not concerned about that here).
Given the grammar constructs of <one-of>
and <item>
, I can see this being possible by enumerating all possibilities such as the rule at this end of this question. However, this seems ridiculous. Is there a better way that I haven't come across yet? Any help would be appreciated.
<rule>
<one-of>
<item>
<item repeat="1">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
<item repeat="8">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
</item>
<item>
<item repeat="1">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
<item repeat="1">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
<item repeat="7">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
</item>
<item>
<item repeat="2">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
<item repeat="1">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
<item repeat="6">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
<item>8</item>
<item>9</item>
</item>
</item>
etc....
</one-of>
</rule>