Урок 27 IVR сценарий вместо отбоя внешней линии — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
Строка 50: Строка 50:
  
 
===Реализация сценария===
 
===Реализация сценария===
 +
 
Сценарий выглядит следующим образом:
 
Сценарий выглядит следующим образом:
  
  
[[Файл:вместоотбоя1.PNG | center]]
+
Компонент "'''CallerId'''". Присваивает переменной '''phone''' (строковая) значение функции "''Номер абонента (CallerId)''".
 +
 
 +
 
 +
Компонент "'''Оцените разговор'''". Воспроизводит абоненту звуковой файл с просьбой оценить разговор. Используется обычное воспроизведение с символами прерывания, а не воспроизведение с преднабором. Это сделано во избежание ввода некорректных значений оценки, например 6, 7 и т.д. Если бы в сценарии мы использовали воспроизведение с преднабором, нам бы пришлось далее анализировать введенный символ на корректность, а это усложняет логику. Обычное воспроизведение файла с установленными символами прерывания может принимать только указанные цифры, а значит некорректных значений быть не может.
 +
* Режим — Файл + дополнительное время. Данный режим предоставляет дополнительное время для ввода оценки после окончания воспроизведения.
 +
* Файл — выбран заранее подготовленный файл "''Пожалуйста, оцените нашего сотрудника по шкале от 1 до 5''".
 +
* Дополнительное время, сек - 10
 +
* Символы прерывания - 1, 2, 3, 4, 5
 +
* Буфер для DTMF - переменная '''rating''' (строковая)
 +
* Очистить буфер - Да
 +
 
 +
 
 +
Компонент "'''Оценка пустая?'''". Проверяет, введена ли оценка абонентом.
 +
* Аргумент 1 - переменная '''rating'''
 +
* Аргумент 2 - пустое поле
 +
* Тип сравнения - "="
 +
* Переход, если правда - если пользователь ничего не ввел переходим на компонент "Обрыв связи".
 +
* Переход, если ложь - если пользователь ввел один из предустановленных символов, переходим на компонент "Ввод данных в БД"
 +
 
 +
 
 +
Компонент "'''Ввод данных в БД'''". Записывает в базу данных номер абонента, текущую дату и введенную оценку. Используется следующий запрос:
 +
 
 +
insert into CallRating (phone, calldate, rating)
 +
values (@phone, getdate(), @rating)
 +
где
 +
*@phone - переменная phone
 +
*@rating - переменная rating
 +
 
 +
 
 +
Компонент "'''Анализ оценки'''". Проверяет введенную оценку, если оценка неудовлетворительна (1 или 2) переключает абонента на отдел качества.
 +
* Аргумент - переменная rating
 +
* Значения - по значениям "1" и "2" переход на компонент "Уведомление о переключении".
 +
* Переход, прочее - на компонент "Спасибо за ваш звонок".
 +
 
 +
 
 +
Компонент "'''Спасибо за ваш звонок'''". Благодарит клиента за звонок
 +
* Режим - файл полностью
 +
* Файл - выбран заранее подготовленный файл "''Спасибо за ваш звонок''".
 +
 
 +
 
 +
Компонент "'''Уведомление о переключении'''". Сообщает клиенту о соединении с отделом качества.
 +
* Режим - файл полностью
 +
* Файл - выбран заранее подготовленный файл "''Мы переведем ваш звонок на отдел качества, пожалуйста не кладите трубку''".
 +
 
 +
 
 +
Компонент "'''На отдел качества'''". Переключает абонента на сотрудников отдела качества.  
 +
* Назначение - внутрь
 +
* Номер - 200
 +
* Тип вызова - обычный
 +
 
 +
 
  
 
В компоненте "воспроизведение с преднабором" указываем файл, в котором говорится "оцените нашего сотрудника от 1 до 5", а также указываем переменную, в которую будет сохраняться оценка. Количество символов указываем 1.  
 
В компоненте "воспроизведение с преднабором" указываем файл, в котором говорится "оцените нашего сотрудника от 1 до 5", а также указываем переменную, в которую будет сохраняться оценка. Количество символов указываем 1.  

Версия 13:09, 30 апреля 2015

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

Введение

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

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


Пример сценария вместо отбоя

В качестве примера рассмотрим задачу оценки ответа оператора после его разговора с клиентом. После того, как оператор положит трубку, необходимо попросить клиента оценить работу оператора по пятибалльной шкале (от 1 до 5) и записать значение в базу данных. В случае, если клиент оценил качество разговора на 1 или 2 балла, соединить с отделом качества.


Создание таблицы для хранения оценок

Для записи оценок создайте таблицу CallRating в базе данных со следующими полями:

  • Id - номер записи в таблице. Тип Int, добавляется автоматически, если создавать таблицу через модуль "Таблицы абонентов"
  • phone — номер абонента. Тип Nvarchar (auto)
  • calldate — дата звонка. Тип Nvarchar (auto)
  • rating — оценка разговора. Тип Nvarchar (auto)

Если у вас нет лицензии Call-центра, создайте таблицу через SQL Server Management Studio. Для этого выполните запрос:

USE [oktell]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[CallRating](
	[Id] [int] IDENTITY(1,1) NOT NULL,
	[phone] [nvarchar](2000) NULL,
	[calldate] [nvarchar](2000) NULL,
	[rating] [nvarchar](2000) NULL,
PRIMARY KEY CLUSTERED 
(
	[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO


Реализация сценария

Сценарий выглядит следующим образом:


Компонент "CallerId". Присваивает переменной phone (строковая) значение функции "Номер абонента (CallerId)".


Компонент "Оцените разговор". Воспроизводит абоненту звуковой файл с просьбой оценить разговор. Используется обычное воспроизведение с символами прерывания, а не воспроизведение с преднабором. Это сделано во избежание ввода некорректных значений оценки, например 6, 7 и т.д. Если бы в сценарии мы использовали воспроизведение с преднабором, нам бы пришлось далее анализировать введенный символ на корректность, а это усложняет логику. Обычное воспроизведение файла с установленными символами прерывания может принимать только указанные цифры, а значит некорректных значений быть не может.

  • Режим — Файл + дополнительное время. Данный режим предоставляет дополнительное время для ввода оценки после окончания воспроизведения.
  • Файл — выбран заранее подготовленный файл "Пожалуйста, оцените нашего сотрудника по шкале от 1 до 5".
  • Дополнительное время, сек - 10
  • Символы прерывания - 1, 2, 3, 4, 5
  • Буфер для DTMF - переменная rating (строковая)
  • Очистить буфер - Да


Компонент "Оценка пустая?". Проверяет, введена ли оценка абонентом.

  • Аргумент 1 - переменная rating
  • Аргумент 2 - пустое поле
  • Тип сравнения - "="
  • Переход, если правда - если пользователь ничего не ввел переходим на компонент "Обрыв связи".
  • Переход, если ложь - если пользователь ввел один из предустановленных символов, переходим на компонент "Ввод данных в БД"


Компонент "Ввод данных в БД". Записывает в базу данных номер абонента, текущую дату и введенную оценку. Используется следующий запрос:

insert into CallRating (phone, calldate, rating)
values (@phone, getdate(), @rating)

где

  • @phone - переменная phone
  • @rating - переменная rating


Компонент "Анализ оценки". Проверяет введенную оценку, если оценка неудовлетворительна (1 или 2) переключает абонента на отдел качества.

  • Аргумент - переменная rating
  • Значения - по значениям "1" и "2" переход на компонент "Уведомление о переключении".
  • Переход, прочее - на компонент "Спасибо за ваш звонок".


Компонент "Спасибо за ваш звонок". Благодарит клиента за звонок

  • Режим - файл полностью
  • Файл - выбран заранее подготовленный файл "Спасибо за ваш звонок".


Компонент "Уведомление о переключении". Сообщает клиенту о соединении с отделом качества.

  • Режим - файл полностью
  • Файл - выбран заранее подготовленный файл "Мы переведем ваш звонок на отдел качества, пожалуйста не кладите трубку".


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

  • Назначение - внутрь
  • Номер - 200
  • Тип вызова - обычный


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

Вместоотбоя2.PNG

Присвоим переменной phone номер телефона клиента (caller id), а переменной datetime (тип дата/время) текущую дату.

Заметим, что в таком случае сaller id вернет нам номер клиента только когда он будет звонить нам (пройдет через сценарий входящей маршрутизации). Если клиенту звонит пользователь oktell, то в таком случае надо пользоваться функцией called id. Лучше всего в таком случае, передавать внешний номер, как глобальную переменную (значение номера присваивается в соответствующих сценариях)

Вместоотбоя3.PNG

Далее используется sql запрос.

insert into answers (phone, datetime, answer)values (@phone, @datetime, @answer)
Вместоотбоя4.PNG
Вместоотбоя5.PNG

Далее информацию можно проанализировать, вычислить средний балл и т.д.

Назначение сценария

Сценарий вместо отбоя внешней линии необходимо включить в общих настройках - сценарии атс

Вместоотбоя6.PNG

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


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

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

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

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