Общие компоненты сценариев

В данном блоке в справочном порядке будут приведены все компоненты, являющиеся общими для всех типов сценариев, а также краткое описание действий и перечни свойств.

Старт

Компонент существует в любом сценарии – с него начинается действие, если трубка обрабатываемой линии положена. Старт на вход принимает параметр, который может сохранить в некоторой внутренней переменной сценария для дальнейшего использования.


Свойства:

Параметр запускаПеременная, в которую необходимо сохранить значение, переданное из другого сценария, запустившего этот.
ПереходКомпонент, на который передается управление.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.

Стоп

Осуществляет завершение сценария без разрыва связи. Служит для остановки выполнения сценария после появления соответствующих условий. Классические примеры успешное переключение в сценарии IVR или корректное завершение работы в сценарии диалога.


Свойства:

Возврат управленияДа/нет. По умолчанию «Да». Флаг определяет необходимо ли в текущей точке передать управление стеку (да) или прекратить выполнение всей последовательности сценариев (нет). Актуален только в сценариях, вызванных через компонент Запуск сценария с установленным флагом «Возврат управления» и в проектных сценариях IVR, вызванных через компонент Вход в проект.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.

Присвоение значения переменной

Задает значение указанной переменной. В качестве присваемого значения выступает аргумент. Используется механизм преобразования типов, если типы значения аргумента и переменной не совпадают.


Свойства:

РежимОдиночный / Множественный
Множественный режим позволяет в одном компоненте производить сразу несколько операций присвоения.
ПеременнаяЛокальная переменная, в которую нужно записать указанное значение.
Доступно только в режиме одиночной операции.
ЗначениеАргумент (значение, переменная, функция, выражение), значение которого необходимо задать для указанной переменной.
Доступно только в режиме одиночной операции.
ОперацииСписок операций (пар элементов {Переменная, Аргумент}), которые будут выполнены в порядке перечисления в окне задания значений нескольких операций присвоения.
Если в одной из операций в аргументе используется переменная, указанная в качестве приемщика значения в более ранней операции по списку, то при расчете значения аргумента будет использовано новое ее значение. Таким образом компонент с множественным присвоением является компактным аналогом последовательности одиночных присвоений.
ПереходКомпонент, на который передается управление.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.

Сравнение

Сравнивает значения двух аргументов. Компонент осуществляет ветвление сценария. В случае соответствия выбранной логической операции и значений аргументов переход осуществляется по ветке «Правда», в противном случае – по ветке «Ложь».


Свойства:

Аргумент 1Аргумент (значение, переменная, функция, выражение), значение которого необходимо сравнить.
Аргумент 2Аргумент (значение, переменная, функция, выражение), значение которого необходимо сравнить.
Тип сравненияОдин из вариантов логической операции:
> (больше)
⇒ (больше или равно)
< (меньше)
⇐ (меньше или равно)
!= (не равно)
Переход, правдаКомпонент, на который передается управление, если выбранная логическая операция вернула истину.
Переход, ложьКомпонент, на который передается управление, если выбранная логическая операция вернула ложь.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.

Меню сравнения

Сравнивает аргумент со списком значений. Компонент может иметь неограниченное число веток перехода. Переход осуществляется по ветке значения, с которым совпало значение аргумента. Если совпадений не найдено, переход осуществляется по ветке «Прочее».


Свойства:

АргументАргумент (значение, переменная, функция, выражение), значение которого необходимо сравнить.
Значения (варианты)Окно ввода значений, позволяющее задать возможные значения и связывающее с каждым указанным значением элемент перехода. Соответственно переход осуществляется по ветке первого найденного совпадающего значения.
Переход, прочееКомпонент, на который передается управление, если среди значений не найдено того, которое соответствует значению аргумента.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.

Запуск сценария

В случае организации автоматических сервисов размеры сценария могут быть достаточно велики, и компонент «Запуск сценария» предоставляет возможность разбить крупный сценарий на несколько логических блоков. Таким образом, один сценарий передает управление в начало другого сценария. При этом можно задать некоторое значение на запуск, которое примет компонент «Старт» вложенного сценария и сохранит в свою локальную переменную. Помимо этого, все переменные одного типа, которые названы одинаково в запускающем и запускаемом сценариях, перенесут свои значения из одного в другой без изменений. Такой способ запуска называется вложенным.


ВНИМАНИЕ! Обработка сценария начинается с компонента Старт и ведется последовательно согласно значениям свойств перехода, если трубка положена (в основном это входящие звонки с внешних линий). В случае, когда трубка уже поднята, после компонентаСтартпроизводится безусловный переход к компоненту «Поднять трубку», если такой имеется в сценарии. При этом обработчик пропускает все компоненты, которые находятся между ними. Запуск вложенных сценариев следует этим же правилам.

Также с помощью компонента можно запускать в параллельный процесс любой служебный сценарий, не работающий с зависимыми от основного сценария ресурсами (линией, оператором). При запуске асинхронного служебного сценария начальные значения его переменных, совпадающих по типам и именам с переменными основного сценария, будут установлены в соответствии с их значениями.

Свойства:

Тип запускаОпределяет тип и формат запуска дочернего сценария.
Вложенный. Запуск вложенного сценария прекращает выполнение (возможно на время, до возврата управления) текущего сценария и активизирует обработку выбранного сценария того же типа.
Асинхронный служебный. Запускает в параллельном процессе выполнение выбранного служебного сценария и продолжает выполнение текущего.
Фоновое медиа-взаимодействие. Доступно только для IVR сценариев. Инициирует дублирующий параллельный сценарий IVR. Подробнее в разделе Сценарии IVR. Фоновый сценарий.
СценарийТекстовое поле с возможностью выбора из списка имеющихся сценариев. Определяет имя сценария, который необходимо запустить.
Параметр запускаАргумент, передающий свое значение на старт запускаемого сценария.
Возврат управленияДа/нет. По умолчанию «Нет». Определяет способ вызова вложенного сценария.
При установке значения «Нет» выполнение текущего сценария прекращается и запускается вложенный сценарий (с сохранением значений всех переменных). Такой способ наиболее часто применим на практике. При установке значения «Да» вложенный сценарий вызывается как функция и после его завершения происходит возврат в точку вызова. Все переменные исходного сценария доступны во вложенном и наоборот, таким образом после возврата они будут иметь соответствующие измененные значения. На процедуру возврата также влияет флаг «Возврат управления» компонента Стоп, - используется во вложенном сценарии после успешного переключения с необходимостью безусловно прервать обработчик сценариев.
ВНИМАНИЕ! Обработчик сценариев поддерживает условно неограниченную вложенность и имеет стек с ограничением в 100 сценариев во избежание зацикливания.
ВНИМАНИЕ! Вызов внутри одной цепочки исполнения может происходить одновременно как с возвратом, так и без возврата.
ПереходКомпонент, на который передается управление после возврата в случае запуска вложенного сценария, а также непосредственно после запуска служебного сценария.
Поле используется (и обязательно для заполнения) только в случае асинхронного запуска служебного сценария, а также в случае вложенного, если флаг «Возврат управления» установлен.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.


Пауза

Осуществляет задержку сценария перед выполнением следующего компонента. В случае указания длительности 0 – компонент пропускается. В некоторых случаях при работе с большими сценариями удобно использовать компонент «Пауза» в качестве пустышки, для удобства и быстроты смены свойств. Например, по веткам выхода из компонента «Меню», где каждое свойство перехода задается внутри специального окна путем выбора одного объекта из списка всех объектов сценария.


Свойства:

Время задержкиВремя в миллисекундах, которое необходимо простоять на компоненте в паузе.
ПереходКомпонент, на который передается управление.
ИмяНазвание компонента для отображения в визуальной среде и выбора в списке.

Статус объекта

Позволяет получить доступ к состояниям различных объектов (на чтение и запись). Например до начала переключения определить статус объекта (пользователя, задачи, номера), чтобы без попытки переключения и, соответственно, без включения сигнала ожидания, озвучить соответствующий текст меню.

Свойства: