The listen element is used for speech recognition,
for audio recording, or for both.
A listen element which is used for speech recognition
contains one or more grammar elements, which are used
to specify possible user inputs. A listen element
which is used for audio recording contains a record
element which is used to configure the recording process. A listen
element used for simultaneous recognition and recording holds one or more grammar
elements and a record element. In all cases, bind
can be used to process the results obtained from recognition and/or recording.
| Name | Data type | Default |
|---|---|---|
CDATA |
implied |
|
milliseconds |
implied |
|
milliseconds |
implied |
|
ID |
implied |
|
milliseconds |
implied |
|
milliseconds |
implied |
|
listen.mode |
"automatic" |
|
script.statement |
implied |
|
script.statement |
implied |
|
script.statement |
implied |
|
script.statement |
implied |
|
script.statement |
implied |
|
confidence.value |
implied |
|
CDATA |
"visibility: hidden" |
|
CDATA |
implied |
Properties used when <record ...> element tag is used:
|
<html xmlns:salt="http://www.saltforum.org/2002/SALT"> |
<!-- HTML --> |
| <html xmlns:salt="http://www.saltforum.org/2002/SALT"> <head> <title>origin and destination</title> </head> <body> <form id="travelForm" action="http://mysite.com/travel/inquire.php" method="post"> <input name="txtBoxOriginCity" type="text" /> <input name="txtBoxDestCity" type="text" /> </form> <!-- SALT --> <salt:prompt id="askOriginCity" onerror="procError()"> Where from? </salt:prompt> <salt:prompt id="askDestCity" onerror="procError()"> Where to? </salt:prompt> <salt:prompt id="notUnderstood" onerror="procError()"> Sorry, I could not understand your input. </salt:prompt> <salt:prompt id="operator" oncomplete="transferToOperator()" onerror="transferToOperator()"> <!-- external function --> I am transferring you to an operator. </salt:prompt> <salt:listen id="recoOriginCity" onReco="procOriginCity()" onNoReco="procNothingUnderstood()" onSilence="procNothingUnderstood()" onError="procError()"> <salt:grammar src="./city.grxml" /> </salt:listen> <salt:listen id="recoDestCity" onReco="procDestCity()" onNoReco="procNothingUnderstood()" onSilence="procNothingUnderstood()" onError="procError()"> <salt:grammar src="./city.grxml" /> </salt:listen> <!-- scripts --> <script> function RunAsk() { if (txtboxOriginCity.value=="") { askOriginCity.Start(); recoOriginCity.Start(); } else if (txtboxDestCity.value=="") { askDestCity.Start(); recoDestCity.Start(); } else { <!-- all slots filled --> travelForm.submit(); } } function procOriginCity () { txtBoxOriginCity.value = recoOriginCity.value; RunAsk(); } function procDestCity () { txtBoxDestCity.value = recoDestCity.value; RunAsk(); } function procNothingUnderstood(){ notUnderstood.Start(); RunAsk(); } function procError() { operator.Start(); } function terminate() { <!-- caller hung up --> window.close(); } </script> <!-- on page load --> <script> <!-- detect disconnect at a central place instead of placing disconnect detect handlers in the listen objects --> callControl.attachEvent("call.disconnected",terminate()); <!-- start dialog execution --> RunAsk(); </script> </body> </html> |
For details on usage of this element, see the SALT Specification, Version 1.0.