Реализация различных голосовых приветствий в зависимости от времени суток – это часто встречающаяся задача, когда в зависимости от определенных условий необходимо проиграть тот или иной звуковой ролик. Поскольку в общем случае то, что будет озвучено ни на что не влияет, то оформим этот фрагмент в качестве отдельного дочернего сценария, чтобы иметь возможность использовать этот сценарий из любого другого.
Обратите внимание, что в конце сценария расположен компонент "Возврат", что обеспечивает по завершении сценария передачу управления в родительский сценарий.
Для создания этого сценария нам потребуются заранее записанные звуковые файлы:
| - | "Здравствуйте", с названием "Hello.wav"; |
| - | "Доброе утро!", с названием "HelloM.wav"; |
| - | "Добрый день!", с названием "HelloD.wav"; |
| - | "Добрый вечер!", с названием "HelloE.wav"; |
| - | "Доброй ночи!", с названием "HelloN.wav". |
Кроме того, надо будет определить те временные интервалы времени, когда необходимо произносить выбранные приветствия. Мы определили для себя, что утро у нас начинается в 8.00, день в 11.00, вечер в 17.00, а в 20.00 начинается ночь, период времени до 8.00 утра тоже считается ночью.
Общий вид сценария

Компоненты, которые использовались при создании этого сценария:
| - | Основные / "Объявить переменную"; |
| - | Основные / "Условие"; |
| - | Основные / "Присвоить значение"; |
| - | Основные / "Возврат"; |
| - | IVR / "Проиграть файл"; |
Первым делом объявляем переменные, которые будем использовать в этом сценарии и задаем им начальные значения.
Строковая переменная Приветствие определяет тот звуковой файл с приветствием, который необходимо воспроизвести абоненту. Задаем ей значение по умолчанию "Hello.wav". Объявление переменной осуществляется компонентом "Объявить переменную". Устанавливаем компонент в сценарий, двойным щелчком мыши на нем активируем его свойства, выбираем тип переменной Строка, справа рядом прописываем ее название "Приветствие", щелкаем на поле ниже и в открывшемся редакторе выражений выбираем "Константа", тип константы – Строка, значение Hello.wav.



Если в последствии мы решим отказаться от различных приветствий в разное время суток и заменить его одним, нам это будет гораздо проще сделать, если мы подготовимся к этому заранее и заготовим возможность быстрого изменения сценария. Если нам потребуется упросить этот сценарий, то мы изменим блок-схему таким образом, чтобы сразу после объявления переменной осуществить переход на компонент "Проиграть_Приветствие".
Объявляем целочисленную переменную Час; Отличие объявления переменной Час от переменной Приветствие заключается лишь в том, что вместо типа "Строка" мы выбираем тип переменной "Целое число 32бит".

При помощи встроенной функции Час() задаем переменной Час целочисленное значение текущего времени в часах.
Объявляем целочисленные переменные Утро и задаем ей значение по умолчанию равное 8; День значение 11; Вечер значение 17; Ночь значение 20.
Теперь пришло время выбрать звуковой файл в зависимости от времени суток
| 1. | Ставим компонент "Условие". Двойным щелчком мыши на нем активируем его свойства. |

Вызываем встроенный редактор выражений в котором слева выбираем "Оператор", указываем тип оператора "X < Y (меньше)" и заполняем значения аргумента X = Час и аргумента Y = Утро

Получаем готовый компонент сравнения двух переменных Час и Утро

Из компонента "Условие" выходит две линии зеленого и красного цвета. Зеленая ветка означает переход если значение внутри компонента истина, а красная, если ложь. По "зеленой" ветке ставим компонент "Присвоить значение" и целочисленной переменной Приветствие строковое значение константы равное "HelloN.wav"

Аналогичным образом расставляем и настраиваем остальные компоненты "Условие" и "Присвоить значение".
Перед компонентом "Проиграть файл" мы определили однозначным образом значение переменной Приветствие и нам осталось только его озвучить абоненту. Озвучивание файла производится компонентом "Проиграть файл" в котором определим какой файл мы будем проигрывать

Двойным щелчком мыши активируем свойства компонента, в разделе "Переменная" указываем из какой переменной будем брать название звукового файла Приветствие

А в разделе Константа, что файл будет проигрываться из медиа-библиотеки

Теперь осталось только загрузить звуковые файлы в медиа-библиотеку. У каждого сценария IVR существует собственная медиа-библиотека звуковых файлов. Попасть в медиа-библиотеку можно начав выбирать файл

В открывшемся окне в раздел "Локальные для сценария" файлы добавляем записанные ранее звуковые файлы. Следует обратить внимание на то, чтобы поле "Значение" осталось пустым, иначе «Infinity Call-центр X» будет пытаться проиграть файл заданный именно в поле значение, иначе название файла будет определено из значения переменной Приветствие, как мы и указали ранее.

Сценарий готов, его можно компилировать и проверять.