Re: Learning VXML


I'll try my best to answer few of your questions. I don't know the answer  
to all of them.

Le Thu, 18 May 2006 10:43:20 +0300, Sanjaya Vitharana <>  
a écrit:

> Hi ... !!!
> I'm Learning VXML & Try to develop VXML interpreter/context kind thing  
> to add the VXML support to a traditional IVR System. I have some Q's &  
> those are might be simple for someone, but I need to understand what  
> those are mean for. Please Help.
> NOTE: If this is not the proper place to forward messages like this,  
> please guide me to the proper mailing list.

www-voice mailing list from W3C is, as far as I know, for discussion of  
the Voice-related specifications only. Not for providing help learning.

The following page provides a good list of resources for learning,  
including newsgroups for asking help:

> 2.)
> What are the prompt conditions ??

<prompt cond="some_var">
This prompt will be played only if some_var evaluates to true.

This is useful for having prompts play only if the provided condition  
evaluates to true. The condition is not predefined by the VXML  
specification. You define it, using the ECMAScript language.


"cond: An expression that must evaluate to true after conversion to  
boolean in order for the prompt to be played. Default is true."

> 3.)
> Also Collect phase says "field level grammar(s) and any active  
> higher-level grammars"
> What is the difference between "field level grammar(s)" & "higher-level  
> grammars" ? And how we know those are "active" or not ?

In any field you can have multiple grammars.

Yet, you can also have grammars for the entire form.

By default, fields wait for a matching utterance from the user, based on  
all grammars: per-field and per-form grammars.

If the field attribute modal="true", then only the grammars within the  
field are activated.

"modal: If this is false (the default) all active grammars are turned on  
while collecting this field. If this is true, then only the field's  
grammars are enabled: all others are temporarily disabled."


> 5.) Are there any simple examples of how above counters & conditions  
> should use in VXML application development ?

  <var name="tmp" expr="true" />
  <prompt>Welcome to the form, please input your command.</prompt>
  <prompt count="2" cond="tmp">
   Again, please input your command.
   <assign name="tmp" expr="false" />
   No input. <reprompt />

This does:

1. Set variable tmp to true.
2. Executes the first prompt: "Welcome to the form, please input your  
3. If the user says nothing, noinput event is thrown, which says "No  
input" and reprompts.
4. The reprompt now will execute the second prompt, which says "Again,  
please input your command". The first prompt, by default, has count 1. You  
can have as many prompts you want.
5. The second prompt does also update "tmp" variable, setting it to false.
6. The second prompt will no longer execute, after this, because the  
condition evaluates to false.

This is just a "silly" example. It's not taken out of a real application.

Good luck!

P.S. If I am mistaking, please someone correct me.

ROBO Design - We bring you the future

Received on Thursday, 18 May 2006 16:23:02 UTC