Home
Задача - передать сотрудникам голосовое сообщение PDF Печать E-mail
Автор: Соколов Илья   
02.11.2010 08:40

Цель: создать механизм, позволяющий одному из пользователей передать голосовое сообщение на телефоны других сотрудников офиса.

 

Задачи

  • Записать голосовое сообщение, набрав внутренний номер 750.
  • Дозвониться до каждого сотрудников с внутренними номерами от 161 до 180 и сообщить им записанное голосовое сообщение.

 

Данная задача довольно таки легко решается средствами Oktell. путей решения может быть несколько.

Один из вариантов решения поставленной цели и задач я вам сейчас расскажу, и для этого нам понадобится:

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

Итак далее все поподробнее.

 

Создайте следующую базу данных на том же сервере, на котором находится база данных Oktell

USE [you_basedata]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[mess_for_opers](
[id] [int] IDENTITY(1,1) NOT NULL,
[int_num] [varchar](3) COLLATE Cyrillic_General_CI_AS NULL,
[rez] [int] NULL,
[filename] [varchar](100) COLLATE Cyrillic_General_CI_AS NULL,
CONSTRAINT [PK_mess_for_opers] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

GO
SET ANSI_PADDING OFF

Создаем сценарий записи голосового сообщения

 

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

  1. делаем паузу в 2 секунды
  2. воспроизводим звук ding
  3. начинаем производить запись файла (имя файла генерируем) в папку C:\oktell\audio\messages_for_opers . На запись отводится 60 секунд. Чтобы закончить запись голосового сообщения необходимо либо дождаться завершения времени записи в 60 сек, либо нажать в тональном режиме *.
  4. снова воспроизводим звук ding, чтобы пользователь услышал, что запись была завершена
  5. после чего делаем цикл, для этого переменной i присваиваем начальное значение 161
  6. добавляем в таблицу строку для формирования дальнейшего обзвона посредством sql запроса "INSERT INTO you_basedata..mess_for_opers ([int_num],[rez],[filename]) VALUES (@num,0,@filename)", где @num и @filename переменные сценария. @num - это внутренний номер сотрудника, в запрос здесь передается переменная сценария "i". @filename - это имя путь+имя файла, в который мы записали голосовое сообщение, необходимо для дальнейшего воспроизведения файла.
  7. увеличиваем переменную "i" на единицу.
  8. проверяем условие "i<=180", если да, то переходим к пункту 6, если нет, то к следующему пункту.
  9. кладем трубку.

Данный сценарий можно скачать: voice_message_all_opers.oscr

Теперь, чтобы любой пользователь смог записать это голосовое сообщение и отправить его группе пользователей, ему необходимо набрать номер внутренний номер телефона 750. Для этого в разделе "Администрирование\Внутренние номера" создаем номер 750 и привязываем его к текущему сценарию, как показано на рисунке:

 

 Теперь нам понадобится сценарий, который будет дозваниваться до сотрудников

Сценарий - дозвон до сотрудников

 

Алгоритм работы следующий:

  1. выбираем первую попавшуюся запись из таблицы, до сотрудника до которого еще не дозвонились "SELECT TOP 1 @id=id, @num=int_num FROM you_basedata..mess_for_opers  WHERE rez<100 ORDER BY rez" 

  2. дозваниваемся до выбранного сотрудника, если дозвонились, то ставим результат = 100 и запускаем "сценарий воспроизведения сообщения"

  3. если не дозвонились, то результат увеличиваем на единицу (в самом начале результат был 0, т.е. будет до 100 попыток дозвона)

  4. конец сценария

Можно скачать этот сценарий: nabor.oscr

Сценарий воспроизведения сообщения

Алгоритм работы следующий:

  1. Выбираем по id записи имя файла, который необходимо воспроизвести "SELECT @filename=filename FROM you_basedata..mess_for_opers WHERE id=@id" 
  2. воспроизводим файл
  3. вешаем трубку

Данный сценарий можно скачать: vosproizvedenie.oscr

Для того, чтобы сценарий дозвона до сотрудников периодически запускался, необходимо в раздел "Администрирование\Общие настройки\Служебные задачи" добавить задачу с периодичным запуском сценария дозвона до сотрудников, как показано на рисунке ниже:

 

Обновлено 03.11.2010 08:05
 

Яндекс цитирования