Компоненты этой группы существуют только в сценариях IVR — потому что только IVR управляет конкретной линией и имеет доступ к аппаратным ресурсам. Здесь собрано всё, что связано с линией и звуком: снять и положить трубку, проиграть файл или число, принять набор с клавиатуры, записать речь абонента.
- локальная категория — папка сценария;
- глобальная категория — папка, где хранятся все сценарии;
- абсолютный путь, например
C:\AAA\BBB; - пусто — тогда считается, что весь путь уже содержится в имени файла.
Поднять трубку
Даёт АТС команду снять трубку на обрабатываемой линии. Имеет смысл для внешних линий, на которые поступает звонок.
Исключение — сквозное переключение, когда трубку снимают только после ответа удалённого или внутреннего абонента. В этом случае мелодии ожидания не воспроизводятся, и внешний абонент слышит обычный сигнал КПВ.
Режимы ответа для SIP-каналов
Свойство «Команда» задаёт режим ответа в линию. Оно работает фактически только в главном сценарии и зависимых от него, когда на управляемой линии входящий вызов и сценарий начинается со «Старта».
| Ответ | Что означает | Звук | Тарификация |
|---|---|---|---|
| 180 Ringing | Система вызывает абонента | Длинные гудки. Проигрывать звуковые файлы запрещено | Не производится |
| 183 Session Progress | Короткое время для проигрывания звуковой информации; провайдеры дают обычно не более 10—20 секунд. Часто используется для голосовой почты | Можно проигрывать | Как правило нет, но зависит от провайдера |
| 200 OK | Полноценное начало разговора. Отправляется автоматически после успешной коммутации с другим абонентом | Можно проигрывать | Начата |
После ответа 200 OK отправлять в линию 180 и 183 уже нельзя.
Для CTI-каналов любой выбранный режим приводит просто к снятию трубки при входящем вызове.
Обрыв связи
Разрывает связь на обслуживаемой линии и завершает сценарий.
| Свойство | Описание |
|---|---|
| Код ответа SIP | SIP-ответ, отправляемый в линию. Позволяет вернуть коды серии 4XX при невозможности обработать запрос, неудачном переключении и подобном. |
| Текст ответа SIP | Расшифровка кода. Например, к коду 486 уместен текст busy here. |
| Дополнительные заголовки | Дополнительные заголовки SIP-сообщения. |
Воспроизведение звукового файла
Проигрывает указанный файл в линию абонента. Компонент завершает работу, как только происходит одно из событий: файл закончился, сработал таймер установленного времени звучания, абонент набрал последовательность или символ прерывания.
Режимы
| Режим | Что делает |
|---|---|
| Файл полностью | Проигрывает файл до конца. |
| Предпрослушивание | Проигрывает заданное число секунд и передаёт управление дальше. |
| Файл + дополнительное время | После файла воспроизводится тишина заданной длительности; набор символов в это время по-прежнему принимается. |
| Фоновое воспроизведение | Запускает файл и сразу передаёт управление дальше. См. ниже. |
| Остановка фона | Явно прекращает фоновое воспроизведение. |
| Генерация DTMF | Генерирует DTMF-символы в обслуживаемый канал. |
Фон останавливается: по достижении конца файла, при обработке другого компонента «Воспроизведение», при явной остановке режимом «Остановка фона», при коммутации с другим каналом или конференцией и при обрыве связи.
Свойства
| Свойство | Описание |
|---|---|
| Режим | Один из перечисленных выше. |
| Файл | Выбор проигрываемого файла; правила пути — см. примечание в начале статьи. |
| Время предпрослушивания | Только в режиме предпрослушивания. Секунды, по истечении которых проигрывание прервётся. |
| Дополнительное время | Только в режиме «файл + дополнительное время». Задержка после воспроизведения. |
| Символы прерывания | Недоступно в фоновом режиме. Символы или последовательности через запятую либо пробел; при их наборе проигрывание прекращается. |
| Буфер | Недоступно в фоновом режиме. Переменная, куда сохранится прервавшая последовательность. |
| Очистить буфер | Недоступно в фоновом режиме. Дописывать последовательность к содержимому буфера или очищать его перед записью. |
| DTMF-последовательность | Только в режиме генерации DTMF. Один или несколько символов для генерации в канал. |
| Переход | После завершения воспроизведения. |
| Переход, неудача | Недоступно в фоновом режиме. Файл не начал воспроизводиться: не задано имя, файла нет, нет доступа, неверный формат. |
EnableGuaranteePlayTimeout
От его значения в файле конфигурации сервера зависит, будет ли обработчик сценария ждать сигнала об окончании воспроизведения или пропустит это ожидание. Если поведение режима предпрослушивания расходится с ожидаемым, смотреть нужно сюда.
В контекстном меню компонента есть команда «Воспроизвести»: прикреплённый файл откроется во встроенном проигрывателе.
Проигрывание числа
Озвучивает число, заданное аргументом. Проигрывание идёт по выбранному формату — время, телефонный номер, деньги — либо по указанной схеме: посимвольно, целиком и так далее.
| Свойство | Описание |
|---|---|
| Число | Аргумент, строковое представление которого в числовом формате нужно проговорить. |
| Языковой алгоритм | Алгоритм преобразования числа с учётом языка. Число 123 по русскоязычному алгоритму звучит как «сто двадцать три», по англоязычному — «one hundred and twenty three». |
| Голос | Папка с набором файлов, озвучивающих числительные и дополнительные слова. Папки хранятся в каталоге со сценариями; в комплект входят три голоса. |
| Формат | «По формату», количество, порядковое числительное, телефонный номер, дата, время, дата/время, день недели, время без нулей в начале, время без нулей в конце, время в секундах, деньги USD, EUR, RUR, UAH. |
| Тип проигрывания | Только при формате «По формату». См. таблицу ниже. |
| Род | Только для форматов «По формату», «Количество», «Порядковое числительное». Мужской (один, двадцатитрёхмиллионный), женский (одна, сто двадцать шестая), средний (одно, однотысячное). |
| Понижение тона | Понижает тон в конце: вместо последнего файла подставляется одноимённый с символом _ на конце, озвученный как окончание речи. Если такого файла нет, берётся обычный. |
| Символы прерывания, Буфер | Как у компонента воспроизведения. |
| Переход | После завершения воспроизведения. |
Типы проигрывания
| Тип | Как звучит |
|---|---|
| Посимвольно | один ноль два три семь… |
| По 2 символа | двадцать два, сорок четыре… |
| По 3 символа | триста пять, двести тридцать четыре… |
| Целиком | двести тридцать четыре триллиона пятьсот двадцать… |
| Буквы и числа посимвольно | один, а, б, в, X, Y, Z, тире, слэш… |
| Слова и фразы | Значения через любой пустой разделитель: пожалуйста_введите_свой_код занято. В папке голоса ищутся соответствующие файлы и проигрываются последовательно. |
Перечень файлов, которые должны быть в папке голоса, приведён в отдельной статье о файлах озвучивания числовых значений.
Ввод числа
Принимает число, набираемое абонентом с клавиатуры телефона, и сохраняет в переменную. Ввод сопровождается тишиной в трубке.
Ввод прекращается, когда происходит одно из трёх событий:
| Событие | Куда уходит управление |
|---|---|
| Набрано указанное количество символов | Ветка «Переход» — успех |
| Набрана последовательность или символ прерывания | Ветка «Переход» — успех |
| Сработал таймер отведённого времени | Ветка «Время» — ввод считается неудавшимся, набранное не сохраняется |
| Свойство | Описание |
|---|---|
| Символы прерывания | Символы или последовательности через запятую либо пробел. |
| Буфер | Переменная для введённого значения. Последовательность прерывания в неё не попадает. |
| Очистить буфер | Дописывать введённое к содержимому буфера или очищать его перед записью. |
| Максимальное время | Время ожидания ввода в секундах. 0 — время не ограничено. |
| Количество символов | Сколько символов ждать; по приёме указанного количества переход происходит сразу. 0 — количество не ограничено. |
| Переход / Переход, время | Успешное завершение ввода либо истечение времени. |
Воспроизведение звукового файла с преднабором
Объединение проигрывания и ввода: абоненту объясняют, что он должен ввести, и не заставляют дослушивать до конца. Как только набран первый символ, файл замолкает и запускается таймер времени ввода. Дальше компонент работает так же, как «Ввод числа».
| Свойство | Описание |
|---|---|
| Файл | Проигрываемый файл; правила пути — см. примечание в начале статьи. |
| Символы прерывания | Символы или последовательности через запятую либо пробел. |
| Буфер | Переменная для введённого значения; последовательность прерывания в неё не попадает. |
| Очистить буфер | Дописывать или очищать перед записью. |
| Максимальное время | Время ожидания ввода в секундах; 0 — без ограничения. См. примечание ниже. |
| Количество символов | Сколько символов ждать; 0 — без ограничения. |
| Переход / Переход, время | Успешный ввод либо истечение времени. |
Запись звукового файла
Записывает звук с микрофона абонента. Запись прекращается, когда набрана одна из заданных последовательностей прерывания либо вышло установленное время — тогда управление уходит по ветке «Время вышло».
| Свойство | Описание |
|---|---|
| Файл | Путь строится из каталога и имени. Имя файла может быть задано жёстко, сгенерировано случайно либо взято из переменной сценария. |
| Имя файла в переменную | Куда сохранить имя записанного файла; нужно, когда имя генерируется. |
| Возвращать полный путь | Да / нет. Вернуть только имя с расширением или полный путь с указанием диска. |
| Символы прерывания | При их наборе запись прекращается, управление уходит по ветке «Переход». |
| Буфер | Переменная для последовательности прерывания. |
| Очистить буфер | Дописывать или очищать перед записью. |
| Максимальное время | Время записи в секундах. |
| Начинать новую папку | Вставлять ли между указанной папкой и именем файла ещё одну папку и как часто её начинать: никогда, каждый час, день, неделю, месяц, каждые 3 месяца, каждый год. |
| Кодек | PCM, G.711 a-law, G.711 u-law, GSM.610, MP3 8 Кбит/с, MP3 16 Кбит/с, MP3 24 Кбит/с. |
| Переход / Переход, время | Успешное завершение либо истечение времени. |
Если имя файла генерируется, обязательно сохраняйте его в переменную — иначе найти запись впоследствии будет нечем. Обычно её тут же кладут в базу данных вместе с номером абонента и временем звонка.