IVR - Фиксировать в БД пропущенные звонки — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
Строка 8: Строка 8:
  
 
[[Файл:fiksirovatpropushenni2.PNG |center]]
 
[[Файл:fiksirovatpropushenni2.PNG |center]]
 +
  
 
Создаем столбцы для дальнейшего заполнения.
 
Создаем столбцы для дальнейшего заполнения.
 +
  
 
[[Файл:fiksirovatpropushenni3.PNG |center]]
 
[[Файл:fiksirovatpropushenni3.PNG |center]]
Строка 16: Строка 18:
  
 
Затем в Главном сценарии необходимо выполнить SQL-запрос, который записал бы в таблицу данные о поступившем звонке. Для этого немного изменяем Главный сценарий. Сперва используя компонент "Присвоение" переменной Номер присваиваем значение функции "Номер абонента(CallerID)".
 
Затем в Главном сценарии необходимо выполнить SQL-запрос, который записал бы в таблицу данные о поступившем звонке. Для этого немного изменяем Главный сценарий. Сперва используя компонент "Присвоение" переменной Номер присваиваем значение функции "Номер абонента(CallerID)".
 +
  
 
[[Файл:fiksirovatpropushenni4.PNG |center]]
 
[[Файл:fiksirovatpropushenni4.PNG |center]]
 +
  
 
Затем необходимо выполнить SQL-запрос. Для этого используем компонент SQL-запрос.
 
Затем необходимо выполнить SQL-запрос. Для этого используем компонент SQL-запрос.
 +
  
 
[[Файл:fiksirovatpropushenni5.PNG |center]]
 
[[Файл:fiksirovatpropushenni5.PNG |center]]
 +
  
 
  insert into dbo.Zvonki (phone, Date, Status)  
 
  insert into dbo.Zvonki (phone, Date, Status)  
 
  values (@phone,getdate(),0)
 
  values (@phone,getdate(),0)
 
  select @id = @@identity
 
  select @id = @@identity
 +
  
 
В качестве параметров(Обращение к БД\вкладка "Параметры") входной переменной phone присваиваем значение переменной "номер", а значение выходной переменной id - присваиваем вновь созданной строковой переменной id.  
 
В качестве параметров(Обращение к БД\вкладка "Параметры") входной переменной phone присваиваем значение переменной "номер", а значение выходной переменной id - присваиваем вновь созданной строковой переменной id.  
 +
  
 
[[Файл:fiksirovatpropushenni6.PNG |center]]
 
[[Файл:fiksirovatpropushenni6.PNG |center]]
 +
  
 
Затем необходимо присвоить значение "1" полю Status, если звонок был обработан. Для этого необходимо после каждого компонента "Переключение на номер", перед компонентом "Стоп" добавить компонент "SQL-запрос", в котором переменной Status будет присвоено значение 1.
 
Затем необходимо присвоить значение "1" полю Status, если звонок был обработан. Для этого необходимо после каждого компонента "Переключение на номер", перед компонентом "Стоп" добавить компонент "SQL-запрос", в котором переменной Status будет присвоено значение 1.
 +
  
 
[[Файл:fiksirovatpropushenni7.PNG |center]]
 
[[Файл:fiksirovatpropushenni7.PNG |center]]
 +
  
 
  update dbo.Zvonki
 
  update dbo.Zvonki
 
  set Status = 1
 
  set Status = 1
 
  where id = @id
 
  where id = @id
 +
  
 
В качестве входного параметра id присваиваем значение строковой переменной id.  
 
В качестве входного параметра id присваиваем значение строковой переменной id.  
 +
  
 
[[Файл:fiksirovatpropushenni8.PNG |center]]
 
[[Файл:fiksirovatpropushenni8.PNG |center]]
 +
  
 
Таким образом все звонки, которые попали в IVR и обработаны пользователями, будут иметь статус "1", остальные( пропущенные, не обработанные и прочие неуспешные) статус "0".  
 
Таким образом все звонки, которые попали в IVR и обработаны пользователями, будут иметь статус "1", остальные( пропущенные, не обработанные и прочие неуспешные) статус "0".  
 
Затем можно будет делать выборку неудачных вызовов по этой таблице. Достаточно вывести все записи со статусом "0".
 
Затем можно будет делать выборку неудачных вызовов по этой таблице. Достаточно вывести все записи со статусом "0".

Версия 12:19, 4 июня 2013

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

Возьмем, к примеру, стандартный главный сценарий.

Fiksirovatpropushenni.PNG

Необходимо сразу же сделать запись в таблицу о том, что в Главный сценарий попал звонок. Для этого создадим локальную таблицу в разделе Call-центр\Таблицы абонентов с именем Zvonki. Если у вас нет модуля Call-центр, то создайте таблицу используя SQL-менеджер.

Fiksirovatpropushenni2.PNG


Создаем столбцы для дальнейшего заполнения.


Fiksirovatpropushenni3.PNG

В поле phone записываем номер звонившего абонента, Date - текущую дату, Status - состояние звонка(0-попал в IVR, но еще не обработан, 1-вызов был обработан).

Затем в Главном сценарии необходимо выполнить SQL-запрос, который записал бы в таблицу данные о поступившем звонке. Для этого немного изменяем Главный сценарий. Сперва используя компонент "Присвоение" переменной Номер присваиваем значение функции "Номер абонента(CallerID)".


Fiksirovatpropushenni4.PNG


Затем необходимо выполнить SQL-запрос. Для этого используем компонент SQL-запрос.


Fiksirovatpropushenni5.PNG


insert into dbo.Zvonki (phone, Date, Status) 
values (@phone,getdate(),0)
select @id = @@identity


В качестве параметров(Обращение к БД\вкладка "Параметры") входной переменной phone присваиваем значение переменной "номер", а значение выходной переменной id - присваиваем вновь созданной строковой переменной id.


Fiksirovatpropushenni6.PNG


Затем необходимо присвоить значение "1" полю Status, если звонок был обработан. Для этого необходимо после каждого компонента "Переключение на номер", перед компонентом "Стоп" добавить компонент "SQL-запрос", в котором переменной Status будет присвоено значение 1.


Fiksirovatpropushenni7.PNG


update dbo.Zvonki
set Status = 1
where id = @id


В качестве входного параметра id присваиваем значение строковой переменной id.


Fiksirovatpropushenni8.PNG


Таким образом все звонки, которые попали в IVR и обработаны пользователями, будут иметь статус "1", остальные( пропущенные, не обработанные и прочие неуспешные) статус "0". Затем можно будет делать выборку неудачных вызовов по этой таблице. Достаточно вывести все записи со статусом "0".