Авто Обзвон + АТС + Call Center

Программный комплекс для массового обзвона абонентов - оповещение, телемаркетинг и колл-центр исходящих вызовов.
Включает в себя полнофункциональную АТС (FreeSwitch) с для работы в большим количеством одновременных вызовов.
  • Функции АТС:
    • Настройка SIP транков.
    • Группы транков.
    • Настройка маршрутизация (диалплан).
    • Внутренние номера.
    • Настройка очередей и агентов колл-центра.
    • Настройка IVR.
    • Встроенная система распознавания речи (PocketSphinx) c русским словарем.
    • Управление и настройка АТС через веб интерфейс или через конфигурационные файлы.
  • Функции Авто Дайлера:
    • Запуск нескольких кампаний одновременно.
    • Ограничение одновременных вызовов.
    • Предиктивный набор для Колл Центра.
    • Обзвон по базе данных.
    • Экпорт из csv.
    • Запуск по расписанию.
    • Ограничение временных диапазонов работы кампании, для защиты от неурочных звонков.
    • Запись и поиск вызовов по базе обзвона.
    • Интеграция с системами генерации (TTS) и распознавания речи (ASR).
    • Управление через веб интерфейс или через API.
  • Русский и английский языки интерфейса.

Загрузка списка обзвона из CSV файла:

Параметры кампании:

  • Retry - количество повторных вызовов на уникальный номер.
  • Timeout - таймаут вызова абонента.
  • Weekdays - дни недели по которым разрешен запуск кампании.
  • Hours - диапазон часов, промежуток в который разрешен запуск кампании.
    • Если текущее время не попадает в указанные параметры, выполнение кампании прекращается. Проверяется при каждом вызове.
  • String limit - кол-во номеров, выбираемое из базы данных при каждом новом вызове кампании.
  • Concurrent - кол-во одновременных вызовов (ограничивает кол-во вызовов которые могут быть инициированы в момент времени)
    • Если кол-во вызовов достигло заданного предела, дайлер ждет завершения текущего вызова/вызовов и только тогда инициирует новый вызов.
    • Concurrent может работать, как в режиме простого ограничения вызовов, так и в предиктивном режиме при работе с очередью колл-центра. В этом случае, при каждой итерации дайлер смотрит, кол-во агентов в очереди с заданным статусом и устанавливает предел динамически, исходя из полученной от очереди колл-центра информации.
  • Application - приложение диалплана FreeSwitch, которое отвечает на успешный вызов.
    • Возможные значения - Callcenter, Fifo, IVR, Playback или Transfer и тд)
  • App Data - Данные приложения (Имя очереди, IVR или файла)
  • Gateway - имя транка или группы транков используемых для данной кампании.
  • Codecs - кодек предпочтительный для транка (опционально).
  • Out CallerId - Идентификатор вызова для транка.

Параметры Дайлера:

  • host, user, db, pass - параметры подключения к БД дайлера (по умолч. PostgreSQL)
  • status - статус номера в базе данных обзвона (используется для выборки номеров обзвона).
    • Если на номер уже был совершен вызов, то статус меняется в соответствии с SIP статусом вызова.
  • send - команда API АТС.
dialer = {
	host = "127.0.0.1",
	user = "DB USER",
	db = "DATABASE",
	pass = "PASSWORD",
	status = " in ('NEW')",
	send = "bgapi originate"
}

Статистика кампаний

Статистика кампаний может получаться, для каждой кампании отдельно или из общего лога и настраиваться по желанию:
  • Примеры отображаемых данных
    • Номер и ФИО абонента.
    • Имя очереди и агента принявшего вызов.
    • Данные о продолжительности вызова.
    • Количество попыток.
    • Действия совершаемые абонентом (например выбор пунктов в IVR меню)
    • Действия совершаемые агентом (например сохранение результата разговора)
    • Запись разговора.
    • Поиск и фильтрация по дате и любым доступным параметрам.

Структура приложения

  • Ядро дайлера написано на Си и взаимодействует с АТС через Lua C API.
  • Данные кампаний и списки обзвона хранятся в базе данных PostgreSQL.
  • Диалплан оригинации вызовов написан на Lua.
  • Объекты для обработки успешных вызовов создаются стандартными методами АТС (Callcenter, IVR, AMD, etc.)
    • или же могут быть реализованы на поддерживаемых ЯП (lua, python, javascript).
  • Статусы обработанных вызовов сохраняются непосредственно в таблицы обзвонов для дальнейшей обработки полученной информации.
Только авторизованные участники могут оставлять комментарии.
  • works/autodialer.txt
  • Последние изменения: 2020/04/20