Elseif

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


<elseif> — элемент <elseif> представляет собой условный оператор, который позволяет выполнять операции, находящиеся между текущим тегом <elseif> и ближайшим тегом <elseif> , <else> или </if>, при выполнении условия cond. Элемент <elseif> не может быть размещен в коде вне условного оператора, определенного тегами <if> и </if>. При наличии серии из нескольких элементов <elseif> с выполняющимся условием cond, интерпретатор выполняет действия, изложенные в первом встречающемся из них.

Синтаксис

 <elseif cond="CDATA" />

Атрибуты

  • cond — условие, при выполнении которого действия будут выполнены.
    (Необходимость указания: обязательно)
  • count — см. аналогичный атрибут в <catch>

Родители:

<if>

Потомки

none

Пример

<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.1" xmlns="http://www.w3.org/2001/vxml" xml:lang="ru-RU">
  <form id="example">
    <field name="f">
      <!-- Это высказывание воспроизводится в первый раз; ожидаем ответ 3 секунды -->
      <prompt bargein="true" count="1" timeout="3s">    
        Добрый день! Назовите, пожалуйста, фамилию сотрудника, с кем Вас необходимо соединить. 
        Для связи с секретарем скажите: "Секретарь"
      </prompt> 
      <!-- Это высказывание воспроизводится во второй раз и далее; ожидаем ответ 6 секунд -->
      <prompt bargein="true" count="2" timeout="6s">          
        Назовите, пожалуйста, фамилию сотрудника, с кем Вас необходимо соединить. 
        Для связи с секретарем скажите: "Секретарь"
      </prompt>        
      <!-- Определяем грамматику для распознавания фамилии сотрудника, с которым необходимо соединить --> 
      <grammar xml:lang="ru-RU" root="main" mode="voice" version="1.0" tag-format="semantics/1.0">
        <rule id="main" scope="public">
          <one-of>  
            <item> Иванов <tag> out.res="отдел продаж" </tag> </item>
            <item> Петров <tag> out.res="отдел сервиса" </tag> </item>
            <item> Сидоров <tag> out.res="отдел продаж" </tag> </item>
            <item> Андреева <tag> out.res="отдел сервиса" </tag> </item>
            <item> Павлова <tag> out.res="отдел продаж" </tag> </item>
            <item> Волжин <tag> out.res="отдел сервиса" </tag> </item>
            <item> Секретарь <tag> out.res="секретарь" </tag> </item>
            <item> Тимофеева <tag> out.res="отдел продаж" </tag> </item>
          </one-of>
        </rule>
      </grammar>
      <noinput> <prompt> Говорите громче! </prompt> <reprompt/> </noinput> 
      <nomatch> <prompt> Не удалось распознать сказанное слово! </prompt> <reprompt/> </nomatch>
      <!-- Обрабатываем ответ абонента -->
      <filled>     
        <prompt>       
          Вы выбрали <value expr="application.lastresult$.utterance"/>. 
        </prompt> 
        <if cond="application.lastresult$.interpretation.res=='отдел продаж'">
          <prompt> Звонок переадресован на отдел продаж. Оставайтесь на линии! </prompt>
        <elseif cond="application.lastresult$.interpretation.res=='отдел сервиса'"/>
          <prompt> Соединение с отделом сервиса. Пожалуйста, приготовьте номер Вашего договора </prompt>
        <else/>
          <prompt> Перевод звонка на секретаря. Ожидайте ответа! </prompt>
        </if> 
      </filled>
    </field>
  </form>          
</vxml>



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

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

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