Прямой доступ к статистике
Прямой доступ к статистике «Infinity IP АТС» (версия 4.0.16.1). Для доступа к БД в ручном режиме потребуется бесплатная утилита IBExpert. После запуска IBExpert, необходимо в ней зарегистрировать базу данных «Infinity IP АТС» (база данных размещена по адресу: Program files\Inteltelecom\Infinity contact-center\servers\serverBD\Data\INFDATA.DAT). Имя пользователя INFINITYUSER, пароль wizard, кодовая таблица WIN1251.
Для доступа к БД в автоматическом режиме (SQL-запросами из других приложений) нужно установить ODBC-драйвер для СУБД Firebird. Параметры подключения аналогичны.
В базе данных INFDATA.DAT содержится ряд таблиц, в которых хранится статистическая информация:
I_STATISTICS – статистика телефонных соединений. Одному звонку может соответствовать от одной до нескольких записей таблицы, в зависимости от цепочки переключений звонка между операторами, голосовыми меню IVR, внешними агентами. Записи связаны между собой ссылками. На рабочем месте супервизора данная информация доступна для просмотра в режиме Статистика – Общая.
I_STATISTICS_CALL_IN – статистика входящих звонков. Одному звонку соответствует одна запись таблицы. На рабочем месте супервизора данная информация доступна для просмотра в режиме Статистика – Входящие звонки.
I_STATISTICS_CALL_OUT – статистика исходящих звонков. Одному звонку соответствует одна запись таблицы. На рабочем месте супервизора данная информация доступна для просмотра в режиме Статистика – Исходящие звонки.
I_STATISTICS_CALL_INNER – статистика внутренних звонков. Одному звонку соответствует одна запись таблицы. На рабочем месте супервизора данная информация доступна для просмотра в режиме Статистика – Внутренние звонки.
I_STATISTICS_CALL_COMMON – статистика всех звонков. Одному звонку соответствует одна запись таблицы. На рабочем месте супервизора данная информация доступна для просмотра в режиме Статистика – Звонки.
I_STATISTICS_EX – привязка уникального идентификатора (GUID) звонка к записям таблицы I_STATISTICS
E_OUTBOUND_STAT_CALL – статистика звонков по кампаниям. На рабочем месте супервизора данная информация доступна для просмотра в разделе Кампании – Статистика звонков.
Статистическая информация записывается в базу данных по факту завершения телефонного вызова. Для автоматической обработки статистики удобно использовать служебный сценарий завершения вызова (настраивается в общих параметрах интеллектуальной АТС). В данном сценарии из функции "ID Операции" можно извлечь GUID звонка, затем обратиться в локальную базу данных call-центра и извлечь необходимую информацию.
Описание структуры таблиц статистики.
Таблица I_STATISTICS
Имя поля |
Тип поля |
Описание |
ID |
INTEGER |
Ключевое поле |
IDNEXT |
INTEGER |
Ссылка на запись следующего в цепочке соединения. |
IDPREV |
INTEGER |
Ссылка на запись предыдущего в цепочке соединения |
TIMESTART |
DOUBLE |
Дата-время начала соединения в формате Excel (целая часть показывает количество дней, прошедших с 31.12.1899, дробная часть – время) |
TIMESTART_D |
DOUBLE |
Дата начала соединения (целое число) |
TIMESTART_T |
DOUBLE |
Время начала соединения (дробное число от 0 до 1) |
TIMEANSWER |
DOUBLE |
Дата и время установки соединения (ответа абонента) |
TIMESTOP |
DOUBLE |
Дата и время завершения соединения |
LENGTH_FULL |
DOUBLE |
Общая продолжительность разговора (для перевода в секунды умножить на 24х60х60 и округлить) |
LENGTH_ANSWER |
DOUBLE |
Продолжительность ожидания ответа |
LENGTH_PURE |
DOUBLE |
Продолжительность "чистого" разговора |
REASONSTART |
INTEGER |
Причина начала соединения: 0 – система оповещения 1 – входящий звонок 2 – внутренний звонок 3 – исходящий в город 4 – исходящий межгород 5 – внутренний звонок в IVR 6 – flash 7 – переключение не удалось 8 – переключение из IVR 9 – неизвестно |
REASONSTOP |
INTEGER |
Причина завершения соединения: 0 – отбой внешнего абонента 1 – отбой внутреннего абонента 2 – flash 3 – Компонент Положить трубку IVR 4 – запрет вызова 5 – таймаут 6 – переключение из IVR 7 – неизвестно |
STOPSIDE |
INTEGER |
Сторона, завершившая соединение |
AUID |
INTEGER |
Номер линии А |
AOUTNUMBER |
VARCHAR100 |
Внешний номер А |
AOUTLINENUMBER |
VARCHAR100 |
Номер городской линии А |
AINIDUSER |
INTEGER |
ID оператора А |
AINNUMBER |
VARCHAR100 |
Внутренний номер А |
ACLIENTCODE |
INTEGER |
Не используется |
ANUMBERDIALED |
VARCHAR100 |
Набранный номер |
BUID |
INTEGER |
Номер линии Б |
BOUTNUMBER |
VARCHAR100 |
Внешний номер Б |
BOUTLINENUMBER |
VARCHAR100 |
Номер городской линии Б |
BINIDUSER |
INTEGER |
ID оператора Б |
BINNUMBER |
VARCHAR100 |
Внутренний номер Б |
BCLIENTCODE |
INTEGER |
Не используется |
ISRECORDED |
INTEGER |
Записан ли разговор |
RECORDNAMEA |
VARCHAR100 |
Имя файла с записью абонента А |
RECORDNAMEB |
VARCHAR100 |
Имя файла с записью абонента Б |
CONNECTIONTYPE |
INTEGER |
Тип соединения: 0 – входящий 1 – исходящий 2 – внутренний |
ASTR |
VARCHAR100 |
Абонент А (выводимая на экран информация, объединяющая все параметры абонента А) |
BSTR |
VARCHAR100 |
Абонент Б (выводимая на экран информация, объединяющая все параметры абонента Б) |
PIC_PREVNEXT |
INTEGER |
Служебное избыточное поле |
STOPREASONSIDE |
INTEGER |
Служебное избыточное поле |
Для доступа к статистике можно использовать простой селективный запрос с любыми условиями, либо процедуру I_STATISTICS_SELECT, в качестве входных параметров которой необходимо задать основные параметры фильтра.
Таблица I_STATISTICS_CALL_IN
Имя поля |
Тип поля |
Описание |
CALLID |
VARCHAR(50) |
Уникальный идентификатор (GUID) звонка |
DATETIME |
DOUBLE PRECISION |
Дата-время начала соединения |
DATETIME_D |
DOUBLE PRECISION |
Дата начала соединения |
DATETIME_T |
DOUBLE PRECISION |
Время начала соединения |
ANUMBER |
VARCHAR(100) |
Номер телефона абонента |
ANAME |
VARCHAR(250) |
Описание абонента |
ANUMBERDIALED |
VARCHAR(100) |
Телефонный номер, набранный абонентом |
CALLRESULT |
INTEGER |
Результат звонка: 0 – неизвестно 1 – обработан IVR 2 – обработан первым оператором 3 – обработан операторами 4 – обработан внешним агентом 5 – потерян |
IVRLENGTH |
DOUBLE PRECISION |
Продолжительность обработки звонка IVR |
IVRNAME |
VARCHAR(250) |
Наименование сценария IVR |
B1WAITLENGTH |
DOUBLE PRECISION |
Продолжительность ожидания ответа первого оператора |
B1TALKLENGTH |
DOUBLE PRECISION |
Продолжительность обработки звонка первым оператором |
B1NUMBER |
VARCHAR(100) |
Номер первого оператора |
B1NAME |
VARCHAR(250) |
Описание первого оператора |
B1IDUSER |
INTEGER |
ID первого оператора |
B2WAITLENGTH |
DOUBLE PRECISION |
Продолжительность ожидания ответа второго оператора |
B2TALKLENGTH |
DOUBLE PRECISION |
Продолжительность обработки звонка вторым оператором |
B2NUMBER |
VARCHAR(100) |
Номер второго оператора |
B2NAME |
VARCHAR(250) |
Описание второго оператора |
B2IDUSER |
INTEGER |
ID второго оператора |
B3WAITLENGTH |
DOUBLE PRECISION |
Продолжительность ожидания ответа последнего оператора |
B3TALKLENGTH |
DOUBLE PRECISION |
Продолжительность обработки звонка последним оператором |
B3NUMBER |
VARCHAR(100) |
Номер последнего оператора |
B3NAME |
VARCHAR(250) |
Описание последнего оператора |
B3IDUSER |
INTEGER |
ID последнего оператора |
EXWAITLENGTH |
DOUBLE PRECISION |
Продолжительность ожидания ответа внешнего агента |
EXTALKLENGTH |
DOUBLE PRECISION |
Продолжительность обработки звонка внешним агентом |
EXNUMBER |
VARCHAR(100) |
Номер внешнего агента |
EXNAME |
VARCHAR(250) |
Описание внешнего агента |
EXROUTENAME |
VARCHAR(250) |
Наименование исходящего маршрута |
SUMLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность вызова |
SUMIVRLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность обработки IVR |
SUMOPERLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность обработки операторами |
SUMEXTERNALLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность обработки внешними агентами |
Таблица I_STATISTICS_CALL_OUT
Имя поля |
Тип поля |
Описание |
CALLID |
VARCHAR(50) |
Уникальный идентификатор (GUID) звонка |
DATETIME |
DOUBLE PRECISION |
Дата-время начала соединения |
DATETIME_D |
DOUBLE PRECISION |
Дата начала соединения |
DATETIME_T |
DOUBLE PRECISION |
Время начала соединения |
ANUMBER |
VARCHAR(100) |
Номер телефона оператора |
ANAME |
VARCHAR(250) |
Описание оператора |
AIDUSER |
INTEGER |
ID оператора |
BWAITLENGTH |
DOUBLE PRECISION |
Продолжительность ожидания ответа |
BTALKLENGTH |
DOUBLE PRECISION |
Продолжительность разговора |
BNUMBER |
VARCHAR(100) |
Номер телефона абонента |
BNAME |
VARCHAR(250) |
Описание абонента |
BROUTENAME |
VARCHAR(250) |
Наименование исходящего маршрута |
SUMLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность вызова |
Таблица I_STATISTICS_CALL_INNER
Имя поля |
Тип поля |
Описание |
CALLID |
VARCHAR(50) |
Уникальный идентификатор (GUID) звонка |
DATETIME |
DOUBLE PRECISION |
Дата-время начала соединения |
DATETIME_D |
DOUBLE PRECISION |
Дата начала соединения |
DATETIME_T |
DOUBLE PRECISION |
Время начала соединения |
ANUMBER |
VARCHAR(100) |
Номер телефона оператора |
ANAME |
VARCHAR(250) |
Описание оператора |
AIDUSER |
INTEGER |
ID оператора |
BWAITLENGTH |
DOUBLE PRECISION |
Продолжительность ожидания ответа |
BTALKLENGTH |
DOUBLE PRECISION |
Продолжительность разговора |
BNUMBER |
VARCHAR(100) |
Номер телефона абонента |
BNAME |
VARCHAR(250) |
Описание абонента |
BIDUSER |
INTEGER |
ID абонента |
SUMLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность вызова |
Таблица I_STATISTICS_CALL_COMMON
Имя поля |
Тип поля |
Описание |
CALLID |
VARCHAR(50) |
Уникальный идентификатор (GUID) звонка |
DATETIME |
DOUBLE PRECISION |
Дата-время начала соединения |
DATETIME_D |
DOUBLE PRECISION |
Дата начала соединения |
DATETIME_T |
DOUBLE PRECISION |
Время начала соединения |
CALLTYPE |
INTEGER |
Тип звонка: 0 – неизвестно 1 – входящий 2 – исходящий 3 – внутренний |
ASTR |
VARCHAR(250) |
Абонент А – номер и описание в строковом виде |
BSTR |
VARCHAR(250) |
Абонент Б – номер и описание в строковом виде |
SUMLENGTH |
DOUBLE PRECISION |
Суммарная продолжительность вызова |
Таблица I_STATISTICS_EX
Имя поля |
Тип поля |
Описание |
PARAM |
VARCHAR(50) |
Уникальный идентификатор (GUID) звонка |
IDFIRST |
INTEGER |
Идентификатор первой записи таблицы I_STATISTICS |
Таблица E_OUTBOUND_STAT_CALL
Имя поля |
Тип поля |
Описание |
ID |
INTEGER |
Идентификатор записи |
ID_PROJECT |
INTEGER |
Идентификатор проекта (из таблицы A_PROJECTS) |
ID_OUTBOUND |
INTEGER |
Идентификатор кампании (из таблицы A_TASKS) |
ID_OUTBOUND_STAT |
INTEGER |
Идентификатор запуска кампании (из таблицы E_OUTBOUND_STAT) |
CONTRAGENT_ID |
INTEGER |
Идентификатор контрагента |
CONTRAGENT_FIO |
VARCHAR(255) |
ФИО контрагента |
TEL_NUMBER |
VARCHAR(100) |
Телефонный номер контрагента |
CALL_RESULT |
INTEGER |
Результат вызова: 0 – неизвестно 1 – занято 2 – нет ответа 3 – некорректный номер 4 – исходящий вызов запрещен 5 – обработан 6 – ошибка |
CALL_DATETIME |
DOUBLE PRECISION |
Дата-время вызова |
CALL_DATE |
DOUBLE PRECISION |
Дата вызова |
CALL_TIME |
DOUBLE PRECISION |
Время вызова |
CONTACT_LENGTH_TIME |
DOUBLE PRECISION |
Продолжительность обработки вызова |
STAT_ID |
VARCHAR(50) |
Уникальный идентификатор (GUID) вызова – связь с таблицами статистики |
EX_INF |
VARCHAR(255) |
Описание ошибки |
ERROR_CODE |
INTEGER |
Код ошибки |
DELAY_TIME |
DOUBLE PRECISION |
Продолжительность ожидания ответа оператора |
OPERATOR_ID |
INTEGER |
ID оператора |
CONTACT_LENGTH_TIME_FIRST |
DOUBLE PRECISION |
Продолжительность обработки вызова первым оператором |