Throw

Материал из VXML
Перейти к: навигация, поиск

Обработка событий (Event hadling). Платформа выдает события, когда пользователь "не отвечает" (приложение делает вывод, запрос help и т.д.). Интерпретатор выдает события, если находит семантическую ошибку (semantic error) в VXML документе или когда присутствует элемент <throw>. Каждый элемент, в котором событие может произойти, имеет набор захватывающих элементов, таких как:

Элемент наследует захватывающие элементы ("как копия") от каждого его предка, при необходимости. Если поле (<field>), например, не содержит захватывающего элемента <nomatch>, а форма содержит, то в элементе формы <nomatch> используется. Таким образом, поведение общей обработки событий может быть указано на любом уровне, и это относится ко всем потомкам.

Элемент <throw> вызывает событие, которое может быть захвачено и обработано с использованием элемента <catch>. Либо события, определенные платформой (такие как nomatch), либо события, определенные пользователем (такие как 'MyPersonalEvent'), могут выдаваться с использованием данного элемента.

Синтаксис

<throw event="NMTOKEN"
       eventexpr="CDATA"
       message="CDATA" 
       messageexpr="CDATA"/>

Атрибуты

  • event — имя события, которое будет выдаваться.
    (Необходимость указания: необязательно)
  • eventexpr — ECMAScript выражение события.
    (Необходимость указания: необязательно)
  • message — строка-сообщение, обеспечивающая дополнительную информацию о выброшенном событии
    (Необходимость указания: необязательно)
  • messageexpr — ECMAScript выражение, обеспечивающее дополнительную информацию для выброшенного события
    (Необходимость указания: необязательно)

ЗАМЕЧАНИЕ: одновременное использование атрибутов event и eventexpr невозможно.

Родители

<block> <catch> <error> <help> <filled> <if> <nomatch>

Потомки

none

Пример

<?xml version="1.0" encoding="UTF-8"?> 
<vxml version = "2.1" xml:lang="ru-RU"> 
 <var name="close" expr="'Осторожно, двери закрываются!'"/> 
 <catch event="closing"> 
   <prompt> <value expr="_message"/>. </prompt> 
 </catch> 
 <form id="warning"> 
   <block> 
    <prompt> Приготовьтесь! </prompt> 
    <throw event="closing" messageexpr="close"/> 
  </block> 
 </form> 
</vxml> 



Добавить новый комментарий
Если не хотите писать от анонимного пользователя, зарегистрируйтесь или представьтесь системе.

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Статьи
Грамматики
Элементы VXML
Элементы SSML
Инструменты