| VoiceXML 2.1 Development Guide | Home | Frameset Home |
| name | Data Type: NMTOKEN | Default: Required |
| The name attribute defines the property name, which should match up with the listing in the property documentation. | ||
| value | Data Type: CDATA | Default: Required |
| The value attribute defines the value for the property in question. Note that all time designations must have the ‘s’ or ‘ms’ suffix appended to the value: <property name=”timeout” value=”10s”/> | ||
| <?xml version="1.0" encoding="UTF-8"?> <vxml version = "2.1"> <meta name="author" content="Matthew Henry"/> <meta name="copyright" content="2005 voxeo corporation"/> <meta name="maintainer" content="YOUR_EMAIL@HERE.COM"/> <catch event="help"> <goto next="#F2"/> </catch> <form id="F1"> <field name="F_1"> <grammar type="text/gsl">[(polk salad annie)]</grammar> <!--HERE WE ENABLE ALL UNIVERSAL GRAMMARS --> <property name="universals" value="all"/> <prompt> say help here. </prompt> <filled> <prompt> this shouldnt get filled </prompt> </filled> </field> </form> <form id="F2"> <field name="F_2"> <grammar type="text/gsl">[hammertoe]</grammar> <prompt> you will note, that the universal grammars are now turned back off. </prompt> <prompt> dont believe me? try saying help again, you philistine. </prompt> <filled> <prompt> this shouldnt get filled </prompt> </filled> </field> </form> </vxml> |
| ANNOTATIONS: EXISTING POSTS |
sildev1
|
|
| The possible parents seems a bit limited here. Consider this, a field is encountered thats asks the recipient if they would prefer a male voice of a female voice. Depending on the answer we want to change the property for voice to encompass the entire application. Is this not possible? | |
MattHenry
|
|
|
Hi there, This actually isn't all that limited after all. In order to achieve this goal, we woul want an application root document present, where we set this property value. In the event that a user wanted to switch TTS voices, we would set a session variable on the server side that would then dynamically change the value of this property setting, which would scope to any leaf documents that referenced the root, ie: <vxml version="2.1" application="myRoot.php"> Let me know if you need further details on this. ~Matt |
|
sildev1
|
|
| Sorry Matt,
I don't think I was clear in my statement. I know a lot of things can be accomplished using server-side Tom Foolery, but I think a pure VXML solution should be possible. Consider the following psuedo VXML example, <field name="voiceToUse"> <prompt>you wanna male or female persona</prompt> <grammar> [male female] </grammar> <filled> <if cond="voiceToUse == 'male'"> <property name="voice" scope="application" value="TellySavalas"/> <else/> <property name="voice" scope="application" value="LyndaCarter"/> </if> <goto nextitem="myPersona"/> </filled> </field> <block name="myPersona"> <prompt> If I said male, I will sound like Kojak for the rest of this application. If I said female, I will sound like Wonder Woman for the rest of this application. </prompt> </block> What I am saying is the ability to set properties at various scopes (app, document etc) should be easy and not require further document fetches and the use of server side session management. |
|
MattHenry
|
|
|
Hi again, You and I are in total agreement on this, make no mistake. =^) I've heard murmurings and rumblings about adding an 'expr' attribute to the property element that will allow you and me both this ability, but nothing has been finalized at this point. Until this becomes clearer, we are unfortunately stuck with using server side methodologies to change the value of any <property> settings in the VXML context. ~Matthew Henry |
|
PUNUKA
|
|
| hey Henry
I got some vendor specific vxml scripts which specify some properties which I dont think are vxml defined(vxml 2. 0). does vxml 2.0 allow specific user defined properties?(I have never come accross). I have seen something like <property name="METRICSLEVEL" value="3/> <property name="LOGLEVEL" value="3/> In case these are defined metrics of vxml 2.0 and above where are they defined? |
|
MattHenry
|
|
|
Hi there, Those properties are indeed platform-specific, and not really w3c compliant. If you want a finer grained control of the log output that you get, you have two options: 1 - Use the <log label> attribute: http://www.voicexmlguide.com/log.htm 2 - Use the debug flags available to the <meta> element: http://www.voicexmlguide.com/motty_meta.htm Regards, ~Matthew Henry |
|
alexey.timofeev
|
|
| Hi!
I have a question according using tag <property> as a child of the tag <transfer>. As a matter of fact I'm interested in using <property name="timeout" value="2s"/> in <transfer>. What will be the result of such using? Will the script wait for 2 secs and then start transfer call? Thanks in advance, Natalia. |
|
voxeojeff
|
|
| Hi Natalia,
Specifying a timeout value of 2 seconds means the interpreter will wait for a user utterance for 2 seconds before it throws a noinput event. I've included a link below which gives a list of the available W3C compliant properties and their descriptions. http://docs.voxeo.com/voicexml/2.0/w3cprops.htm#start Hope this helps, Jeff |
|
jkugler
|
|
| Note that property names must be lower case or it gets ignored and the default is used.
Josh Kugler ifbyphone Inc. |
| login |