Урок 24 IVR сценарий входящей маршрутизации

Материал из Oktell
Перейти к: навигация, поиск
Наверх К предыдущему уроку К следующему уроку

Системные сценарии

С этого урока мы начинаем изучение системных сценариев платформы Oktell. Ранее мы составляли самые простейшие алгоритмы и изучали работу служебных и IVR сценариев без привязки к реальной системе. В действительности любой системный сценарий запускается в определенный момент при возникновении какого-либо события, например, поступления звонка или во время переключения абонента на другого оператора. В каждый из таких случаев используется отдельный алгоритм, который отвечает за качественную обработку такого вызова.

Приведем самые основные системные сценарии, которые почти всегда присутствуют в любой системе:

  • IVR сценарий входящей маршрутизации (или Главный сценарий) - отвечает за обработку любого входящего звонка; В списке сценариев отмечен красным цветом.
  • IVR сценарий исходящей маршрутизации - позволяет совершать исходящие вызовы пользователям Oktell; В списке сценариев выделен синим цветом.
  • IVR сценарий переключения - требуется для совершения перевода звонка другому пользователю; В списке сценариев отмечен желтым цветом.
  • IVR сценарий вместо отбоя внешней линии - позволяет дополнительно обработать звонок, после того как оператор положил трубку;
  • Служебный сценарий набора внешних/быстрых номеров - запускается для выбора линии, по которой пойдет звонок на быстрые или групповые номера, содержащие внутри внешний номер;
  • Служебный сценарий обработки контента - производит постобработку вызова, когда внешняя линия уже положила трубку.

В системе существуют и другие сценарии, но они используются в редких случаях. Все системные сценарии назначаются в модуле Администрирование/Общие настройки, далее выбираются на вкладке Системные настройки в группе "Сценарии АТС". В списке сценариев системные сценарии отмечаются серым цветом (кроме первых трех, указанных выше).


Урок24-001.png


Главный IVR сценарий

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

ВНИМАНИЕ: Это важный момент, ведь вызов от внутреннего пользователя не попадет в главный сценарий,

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

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

Фактически, мы уже рассматривали примеры главного сценария в уроках 17-21 и вы можете использовать любой из этих сценариев. Однако в рамках данного параграфа специально рассмотрим самый простой сценарий входящей маршрутизации, который будет все звонки направлять на единый групповой номер 100. Сценарий выглядит следующим образом:


Урок24-003.png


В сценарии используется компонент переключения "На номер 100" со следующими свойствами:

  • Назначение - Внутрь
  • Номер - строка "100"
  • Тип вызова - Обычный
  • Очередь ожидания - Да

После переключения идет переход на компонент "Стоп", если номер отсутствует или не отвечает, то на линии клиента будет происходить обрыв связи. После редактирования сценария сохраните его на сервер.

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

Чтобы назначить сценарий главным необходимо в списке сценариев выбрать его и нажать кнопку "Главный". После этого название сценария будет выделено красным цветом. Начиная с этого момента, сценарий будет отвечать за обработку всех входящих вызовов и переводить их на номер 100, согласно настроенному алгоритму.

Скачать сценарий: Маршрутизация входящих (демо).oscr


Урок24-004.png


Пример главного сценария

При проектировании вашего главного сценария следует обратить на следующие функциональные блоки:

  1. Определение времени и приветствие. На этом этапе проверяется рабочее время, воспроизводится файл приветствия.
  2. Распределение звонка на внутренние номера. Здесь звонок маршрутизируется на операторские группы, используется очередь ожидания.
  3. Окончание обработки - последний блок, нужен для записи служебных переменных, для обработки неудачного соединения, включения голосовой почты или заказа на встречный звонок.

Рассмотрим стандартный главный сценарий, который включен изначально в дистрибутив Oktell. Сценарий выглядит следующим образом


Main1.png


Блок: Определение времени и приветствие

После начала коммутации произведем анализ времени поступившего вызова и направим абонента на соответствующее приветствие.


Main12.png


Компонент "Начинаем работать?". Определяет начался ли рабочий день компании. В сценарии предполагается, что офис работает с 7:00 до 20:00.

  • Аргумент 1 - функция "Текущий час"
  • Аргумент 2 - число "7", целая часть часа, с которого планируется начало работы в офисе.
  • Тип сравнения - ">=". Нас интересует время, которое больше 7 часов, но поскольку целая часть часа от времени 7:05, например, равна 7, то мы также должны указать, что время должно быть не только больше 7, но и еще быть равным. Поэтому используем тип сравнения больше или равно(>=).


Main11.png


Компонент "Текущий час>=20". В случае если рабочий день начался, этот компонент определяет конечные часы рабочего дня.

  • Аргумент 1 - функция "Текущий час"
  • Аргумент 2 - число "20", целая часть часа, когда офис закончит работу.
  • Тип сравнения - ">=".


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

  • Режим: Файл полностью
  • Файл: выбран файл "ваш вызов не может быть обслужен.wav"

Компонент "Приветствие". Если звонок удовлетворил двум, описанным выше, сравнениям, то это означает, что он поступил в рабочее время и ему проигрывается файл с заранее записанным приветствием.

  • Режим - Файл полностью
  • Файл - выбран файл "Добрый день.wav"


Блок: Распределение звонка на внутренние номера

Компонент "Ввод добавочного номера". Позволяет клиенту ввести внутренний номер сотрудника для соединения.

  • Файл - выбран аудиофайл "введите номер или дождитесь.wav"
  • Переменная - переменная "номер" (строковая), в которую будем записывать то, что будет набирать позвонивший к нам клиент.
  • Макс.время, с - 5. Это время, которое будет дано клиенту на набор указанного числа символов.
  • Количество символов - 3. Именно столько символов, будет позволено набрать клиенту. Количество должно соответствовать длине внутренних номеров компании.


Компонент "Проверяем статус введенного номера". Если абонент ввел символы (ветка Переход от предыдущего компонента), проверяем свободен ли вызываемый номер.

  • Действие — Определить
  • Тип объекта — Номер
  • Номер - переменная "номер", в которой содержатся введенные символы клиента
  • Функция — Наличие свободных абонентов
  • Значение в переменную — переменная "наличие свободных" (строковая). В переменной будет сохранен результат функции.


Main13.png Main4.png


Компонент "Номер занят?". Анализирует полученный результат и определяет свободен ли номер.

  • Аргумент 1 - переменная "наличие свободных", которую использовали для сохранения статуса номера.
  • Аргумент 2 - указываем числовую константу 0. Если обратиться к описанию компонентов, можно увидеть, что статус 0 возвращается, когда у номера нет свободных абонентов, т.е. Телефон занят»
  • Тип сравнения - "=".
  • Переход, если правда - означает, что телефон занят. В этом случае ведем клиента на компонент "Запрос действия 1", где предложим абоненту несколько вариантов действий.
  • Переход,если ложь — на непосредственное соединение с требуемым пользователем.


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

  • Нажать 1, если клиент хочет встать в очередь к изначальному номеру
  • Нажать 2, если клиент хочет ввести другой добавочный номер
  • Нажать 3, если клиент хочет переключиться на секретаря

Голосовое меню строиться с помощью 2-х компонентов — "Запрос действия 1" и "Меню выбора действия". Рассмотрим компоненты подробнее.


Компонент "Запрос действия 1". Предлагает клиенту выбрать действие, которое он хочет выполнить.

  • Файл - выбираем файл "телефон занят.wav", заранее подготовленную запись с предложением действий.
  • Переменная - переменная "действие" (строковая). Таким образом мы получаем все введенные клиентом DTMF-символы.
  • Очистить буфер — Да.
  • Макс. время, с — 5 секунд.
  • Количество символов — 1.
  • Переход - переводим на компонент меню сравнения.
  • Переход таймаут — оставляем пустым,либо переводим на обрыв связи. Данную ситуацию тоже можно обработать каким-либо способом на ваше усмотрение.


Компонент "Меню выбора действия". Маршрутизирует звонок в зависимости от введенного символа.

  • Аргумент - указываем переменную "действие".
  • Значения:
1 — компонент "Переключение на сотрудника". Переход на переключение на номер с очередью ожидания.
2 — Компонент "Ввод добавочного номера". На воспроизведение с преднабором, где предлагается ввести добавочный номер.
3 — компонент "На секретаря". Переключение на номер, в котором осуществляем соединение с секретарем.
  • Переход,прочее — оставляем пустым. Таким образом, если клиент введет символ отличный от 1,2 или 3, то его звонок прервется.


Main5.pngMain6.png


Подробнее рассмотрим компонент переключения на номер, в котором будем осуществлять переключение на указанный клиентом внутренний номер.

Компонент "Переключение на сотрудника"

  • Назначение — Внутрь.
  • Номер — переменная "номер", в которой мы сохраняли желаемый клиентом внутренний номер.
  • Тип вызова — обычный.
  • Очередь ожидания - Да.
  • Переход - на компонент "Стоп".

ВНИМАНИЕ: Обратите внимание, что используется компонент Стоп, а не Обрыв связи.

  • Остальные настройки оставляем по умолчанию.


Main7.png


Далее рассмотрим переключение на номер, в котором будем производить вызов секретаря.

Компонент "На секретаря". Переключает звонок на секретаря.

  • Направление — Внутрь.
  • Номер — переменная "номер секретаря", которую мы указали в самом начале сценария.
  • Тип вызова — обычный.
  • Очередь ожидания — да.
  • Время ожидания ответа — 40 (время которое будет звонить телефон у пользователя)
  • Переход — стоп. Обратите внимание, что используется компонент Стоп, а не Обрыв связи.
  • Остальные ветки переход - отправляем на компонент "Чтобы голосовое сообщение пришло секретарю".


Компонент "Чтобы голосовое сообщение пришло секретарю". В том случае, если клиент не соединился ни с одним сотрудником, в дальнейшем ему будет предложено оставить голосовое сообщение. Этот компонент сохраняет номер секретаря, чтобы ему пришло голосовое сообщение от клиента.

  • Переменной "номер" присваиваем значение переменной "номер секретаря".

Далее осуществляем переход к заключительной категории — окончанию обработки.


Блок: Окончание обработки

В данном разделе рассмотрим каким образом будет завершаться коммутация с клиентом,если не один пользователь не ответил или если звонок пришел в не рабочее время.


Main10.png


Вернемся к первому разделу.

После воспроизведения клиенту сообщения о том, что офис сейчас не работает, осуществляем переход на компонент "Запуск сценария Голосовая почта".

Компонент "Голосовое сообщение для секретаря". Предварительно заносим в переменную "номер" внутренний номер секретаря, который сохранен в соответствующей переменной.

  • Переменной "номер" присваиваем значение переменной "номер секретаря".


Компонент "Запуск сценария Голосовая почта". Позволяет оставить голосовую почту от клиента определенному пользователю системы.

  • Тип запуска — вложенный.
  • Режим выбора сценария - из списка
  • Сценарий — выберите из списка сценарий "(пример)Голосовая почта", который идет в дистрибутиве комплекса Oktell.
  • Параметр запуска — переменная "номер", в которую записали внутренний номер сотрудника, либо номер секретаря.
  • Возврат управления — нет.


Main8.png


Таким образом, если звонок придет вне рабочего времени, система сообщит об этом клиенту, а затем предложит оставить голосовое сообщение.

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

Компонент "Запрос действия 2". Запрашивает у клиента, хочет ли он оставить голосовое сообщение.

  • Файл — выбираем заранее подготовленную запись сообщения с текстом: "К сожалению оператора нет на месте, если вы хотите оставить голосовое сообщение нажмите 1". В примере это файл "Оператора нет на месте_cсообщение.wav"
  • Переменная — выбираем уже созданную переменную "действие". Вы также можете создать и использовать другую переменную.
  • Очистить буфер — да
  • Макс. время, с — 5 секунд.
  • Количество символов — 1.
  • Переход — компонент сравнения "Ввели 1?"
  • Переход, таймаут - компонент воспроизведения "Спасибо за звонок".


Main9.png


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

Компонент "Ввели 1?". Определяет введенный клиентом символ.

  • Аргумент 1 - переменная "действие"
  • Аргумент 2 - число "1"
  • Тип сравнения - "="

Переход по правде произойдет на компонент "Запуск сценария Голосовая почта", который описан выше. Таким образом произойдет переход в сценарий записи голосовой почты.

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

Компонент "Спасибо за звонок".

  • Режим: Файл полностью
  • Файл: выберите файл с записанным сообщением


После модификаций сохраните данный сценарий на сервер.


Скачать сценарий: Маршрутизация входящих.oscr

Назначение главного сценария

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


Урок24-002.png


Скачать сценарии: Маршрутизация входящих (демо).oscr и Маршрутизация входящих.oscr

Поздравляем! Теперь вы умеете создавать IVR сценарий входящей маршрутизации и настроить вашу систему на прием звонков от клиентов. Можете переходить к следующему уроку.

Техническая документация: Сценарии АТС


Вопросы и задания

Наверх К предыдущему уроку К следующему уроку