<goto>

<goto>

The <goto> element is used to:

  • Transition to another form item in the current form.

  • Transition to another dialog in the current document.

  • Transition to another document.

Attributes

Name
Data type
Description

fetchhint

This attribute is not supported.

fetchtimeout

String

(defaults to “fetchtimeout” global property value) The timeout for fetches. Must be specified with the appropriate time units (e.g., “120s” for 120 seconds).

maxage

String

(defaults to “documentmaxage” global property value) Tells the platform the maximum acceptable age, in seconds, of cached documents.

maxstale

String

(defaults to “documentmaxstale” global property value) Tells the platform the maximum acceptable staleness, in seconds, of expired cached documents.

next

String

The URI to which to transition.

expr

String

An ECMAScript expression that yields the URI.

fetchaudio

String

(defaults to “fetchaudio” global property value) The URI of the audio clip to play while the fetch is being done.

expritem

String

An ECMAScript expression that yields the name of the next form item to visit.

nextitem

String

The name of the next form item to visit in the current form.

Notes

Exactly one of “next”, “expr”, “nextitem”, and “expritem” must be specified.

Example

gotoexample.php

<?php
header("Content-type: text/xml");
echo "<?xml version=\"1.0\"?>\n";
?>
<vxml version="2.0">
  <form id="firstform">
    <block>
      <prompt>
        Jumping to the third form.
      </prompt>
      <!-- A "#" symbol followed by an identifier specifies a -->
      <!-- form or menu ID to jump to. -->
      <goto next="#thirdform"/>
    </block>
  </form>
  <form id="secondform">
    <block>
      <prompt>
        Now jumping to another document.
      </prompt>
      <goto next="newdocument.php"/>
      <disconnect/>
    </block>
  </form>
  <form id="thirdform">
    <field name="firstfield">
    <grammar type="application/x-jsgf">
      1 | 2
    </grammar>
      <prompt>
        Enter 1 to go to the next field. Enter 2 to go to the next form.
      </prompt>
    <filled>
      <if cond="firstfield==1">
        <prompt>
          Jumping to the next field.
        </prompt>
        <goto nextitem="secondfield"/>
      <else/>
        <prompt>
          Jumping to the next form.
        </prompt>
        <goto next="#secondform"/>
      </if>
    </filled>
    </field>
    <field name="secondfield">
    <grammar type="application/x-jsgf">
      1
    </grammar>
      <prompt>
        Enter 1 to go to the next form.
      </prompt>
    <filled>
      <prompt>
        Now jumping to the next form.
      </prompt>
      <goto next="#secondform"/>
    </filled>
    </field>
  </form>
</vxml>

The output of the above script would be:

Computer: Jumping to the third form. Computer: Enter 1 to go to the next field. Enter 2 to go to the next form. Human: (enters DTMF-1) Computer: Jumping to the next field. Computer: Enter 1 to go to the next form. Human: (enters DTMF-1) Computer: Now jumping to the next form. Computer: Now jumping to another document. Computer: This is a new document.

Child Tags

None

Parent Tags

<block>, <catch>, <error>, <filled>, <foreach>, <help>, <if>, <noinput>, <nomatch>

Last updated