Transfer

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


<transfer> — данный элемент производит переадресацию абонента к другой системе (в качестве примера такой системы могут выступать свободные операторы контактного центра, иная телефонная линия или голосовое приложение). Во время проведения переадресации текущая работа интерпретатора приостанавливается.
Существует несколько способов проведения переадресации: мостовая (bridge transfer), слепая (blind transfer), сетевые перенаправления, рычажный перевод (switchhook transfer) и т.д. В VoiceXML поддерживаются мостовая переадресация и слепая переадресация. Остальные виды перевода звонков в значительной степени зависят от голосовой платформы, особенности сетей и конфигураций.
ЗАМЕЧАНИЕ: не все голосовые платформы поддерживают элемент <transfer>.

Синтаксис

<transfer aai="CDATA"
          aaiexpr="CDATA" 
          bridge="(true|false)" 
          cond="CDATA" 
          connecttimeout="CDATA" 
          dest="CDATA" 
          destexpr="CDATA" 
          expr="CDATA" 
          maxtime="CDATA" 
          name="NMTOKEN" 
          transferaudio="CDATA" 
          type="(bridge|blind|refer)">

Атрибуты

  • cond — условие, при выполнении которого действия, заключенные между элементами <transfer> и </transfer>, будут выполнены.
    (Необходимость указания: необязательно)
    По умолчанию: TRUE
  • name — переменная (наименование переадресации), значение которой хранит исход попытки мостовой переадресации. В случае использования слепой переадресации данная переменная имеет значение undefined
    (Необходимость указания: необязательно)
  • expr — начальное значение переменной элемента. Если это значение инициализировано, то к элементу обращение не происходит, до тех пор пока значение не будет очищено.
    (Необходимость указания: необязательно)
  • dest — URI пункта переадресации (номер телефона с кодом города и страны, IP-адрес и т.п.).
    (Необходимость указания: обязательно, если не указан destexpr)
  • destexpr — ECMAScript-выражения для URI пункта переадресации.
    (Необходимость указания: обязательно, если не указан expr)
  • connecttimeout — время ожидания при попытке переадресации, прежде чем вернется результат noanswer. Применяется только в случае, если bridge="true"
    (Необходимость указания: необязательно)
  • maxtime — атрибут, который определяет длительность переведенного звонка. По умолчанию "0" — это означает, что звонок может длиться произвольное количество времени. Применяется только в случае bridge="true"
    (Необходимость указания: необязательно)
    По умолчанию: 0
  • transferaudio — URI на аудиофайл для воспроизведения, пока происходит попытка переадресации. Если файл недоступен, то ошибка не выдается и перевод производится по указанным параметрам.
    (Необходимость указания: необязательно)
  • aaiApplication-to-application information. Строка, содержащая данные, которые передаются на линию переадресации. Задание данных возможно через переменную "session.connection.aai". В платформах, которые не могут получать aai-данные, переменная "session.connection.aai" должна иметь значение undefined. Механизм передачи данных может накладывать определенные ограничения на длину сообщений.
    (Необходимость указания: необязательно)
  • aaiexpr — ECMASCript, определяющий значение атрибута aai
    (Необходимость указания: необязательно)
  • bridge — определяет, будет ли платформа во время проведения переадресации оставаться на связи с вызываемой системой или с абонентом:
  1. "true" — платформа создает соединение с вызываемой системой. Интерпретация документа приостанавливается до тех пор, пока переадресация не прекратится. Платформа остается на связи в течение всего вызова. Ожидание команды в течение переадресации управляется любой подключенной грамматикой. Если по команде пользователя или из-за проблем в сети соединение разрывается, платформа выдает connection.disconnect.hangup event.
  2. "false" — платформа перенаправляет абонента к вызываемой системе, при этом не сохраняя соединения и не отображая результат переадресации. Платформа выдает connection.disconnect.transfer сразу, независимо от того, была переадресация успешной или нет.
    (Необходимость указания: необязательно)
    По умолчанию: FALSE
  • type — метод переадресации. Данный атрибут добавлен в стандарт VoiceXML 2.1 и предназначен для указания способа перевода звонка: мостовая, слепая переадресация или перевод с консультацией. Не все голосовые платформы поддерживают использование перевода звонка с консультацией.
    (Необходимость указания: необязательно)
    По умолчанию: bridge

ЗАМЕЧАНИЕ №1: обязательно должен быть указан ровно один из атрибутов dest или destexpr.
ЗАМЕЧАНИЕ №2: не допускается одновременное использование атрибутов bridge и type.

Скрытые переменные

  • name$.duration — длительность перевода звонка в секундах. Значение "0" соответствует ситуации, когда произошел разрыв соединения по команде пользователя.
  • name$.inputmode — режим, в котором произошел разрыв соединения: DTMF или речевой.
  • name$.utterance — текст высказывания, который будет произнесен при прекращении перевода.

Родители

<form>

Потомки

<audio> <catch> <enumerate> <error> <help> <link> <noinput> <nomatch> <prompt> <property> <value>

Пример

<?xml version="1.0" encoding="UTF-8"?>
<vxml version="2.1" xmlns="http://www.w3.org/2001/vxml" xml:lang="ru-RU">
  <form id="form">
    <block>
      <prompt>
        Производится перевод звонка.
      </prompt>
    </block>
    <transfer name="test" dest="sip:<номер>@<адрес сервера>:<порт>" bridge="false">
    </transfer>
  </form>
</vxml>



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

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

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