Автообзвон
Автообзвон автоматически обзванивает список контактов по заданному расписанию и сценарию — например, чтобы соединить клиента с оператором, проиграть сообщение, провести опрос или актуализировать номера. Для работы домен должен быть в режиме Колл-центр.
Работа строится вокруг пакета (кампании обзвона, DomainDialerBatch). В пакет добавляются контакты (DomainDialerContact) — номера с дополнительными полями. По каждому контакту система делает попытки дозвона (DomainDialerAttempt), пока не будет достигнута цель кампании или не закончатся попытки.
Что происходит, когда абонент ответил, определяет тип обзвона — поле dp пакета (соединить с очередью, проиграть аудио, отправить в маршрут, опросить и т.д.). Как быстро и в каком порядке набирать — задают стратегия, расписание и правила перезвона.
Объекты
Объекты сгруппированы по назначению.
Пакет, контакты, попытки (основные сущности кампании):
DomainDialerBatch — пакет обзвона: список контактов, расписание, сценарий, цель;
DomainDialerContact — контакт (номер и дополнительные поля) внутри пакета;
DomainDialerAttempt — попытка дозвона до контакта (с результатом);
DomainDialerBatchGroup — группа пакетов (для удобной группировки);
DomainDialerBatchNextCallParams — правило перезвона по номеру попытки или её статусу.
Расписание и цель (когда звонить и когда считать кампанию выполненной):
DomainAutoDialingBatchSchedule — расписание: дни, время, будни/выходные, период;
DomainAutoDialingBatchScheduleDays — набор дней недели для расписания;
DomainAutoDialingBatchSuccessOption — цель кампании (по проценту завершённых или успешных контактов).
Тип обзвона (что происходит, когда абонент ответил; значение поля dp пакета):
DomainDialerBatchDPQueue — соединить с оператором указанной очереди;
DomainDialerBatchDPPlayback — проиграть аудио;
DomainDialerBatchDPDP — отправить вызов в маршрут (диалплан);
DomainDialerBatchDPCheck — актуализация контакта (проверка номера);
DomainDialerBatchDPQuestions — анкетирование: задать вопросы с оценкой;
DomainDialerBatchDPDPQueue, DomainDialerBatchDPDPWithCheckQueue — комбинированные варианты (маршрут вместе с очередью).
Стратегии распределения (для типа «очередь» — как выбирать, сколько набирать):
DomainDialerQueueStrategyManual — ручная;
DomainDialerQueueStrategyProgressive — прогрессивная, с учётом числа свободных агентов;
DomainDialerQueueStrategyPredictive — предиктивная, по целевому времени ответа и SLA.
Озвучивание данных контакта (элементы аудио, подставляют значения из полей контакта):
DomainDialerAudioInline — список аудио-элементов;
DPEDomainDialerContactIntegerTag — озвучить число из поля контакта;
DPEDomainDialerContactMoneyTag — озвучить сумму или долг;
DPEDomainDialerContactPhraseTag — озвучить фразу по значению поля.
HTTP-запросы по событиям (вызвать внешний сервис при событиях обзвона):
DomainDialerBatchHttpRequestBase — базовый объект запроса;
DomainDialerBatchHttpRequestGet — GET-запрос;
DomainDialerBatchHttpRequestPost — POST-запрос.
Запросы
Список пакетов
{
"action": "list",
"obj": "DomainDialerBatch",
"action_id": "a363-1636-fa71-fdc9",
"params": {
"domain_id": 34
},
"limit": 100,
"offset": 0,
"sort": {
"name": "+"
}
}
Редактирование пакета
{
"action": "update",
"obj": "DomainDialerBatch",
"action_id": "0815-a04c-1f22-3956",
"params": {
"id": 334,
"domain_id": 34,
"name": "Test",
"delay_next_call": 60,
"contacts_by_status": {
"0": 5
},
"is_active": false,
"lines": 1,
"link": "",
"max_calls": 1,
"status": 1,
"target_time": 10,
"outbound_dp_id": 948,
"priority": 0,
"target": {
"type": 0,
"value": 100
},
"schedule": {
"dt_start": 1707177600,
"dt_end": 1707868799,
"time_start": "09:00:00",
"time_end": "17:59:59",
"time_start_weekend": "11:00:00",
"time_end_weekend": "16:59:59",
"tz": false,
"wd": {
"monday": true,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false
}
},
"dp": {
"name": "DomainDialerBatchDPQueue",
"queue_id": 89,
"audio_before": {
"list": []
},
"strategy": {
"name": "DomainDialerQueueStrategyProgressive",
"check_agents": true
}
}
}
}
Удаление пакета
{
"action": "delete",
"obj": "DomainDialerBatch",
"action_id": "437f-6382-74c1-d936",
"params": {
"id": 334,
"domain_id": 34
}
}
Создание пакета с типом Соединить с очередью
Ответивший клиент соединяется с оператором указанной очереди. Порядок и интенсивность набора задаёт стратегия.
{
"action": "append",
"obj": "DomainDialerBatch",
"action_id": "3a8d-b2e3-b83a-997e",
"params": {
"domain_id": 34,
"name": "Test",
"delay_next_call": 60,
"contacts_by_status": null,
"is_active": null,
"lines": 1,
"link": "",
"max_calls": 1,
"status": 0,
"target_time": 10,
"outbound_dp_id": 948,
"priority": 0,
"target": {
"type": 0,
"value": 100
},
"schedule": {
"dt_start": 1707091200,
"dt_end": 1707782399,
"time_start": "09:00:00",
"time_end": "17:59:59",
"time_start_weekend": "11:00:00",
"time_end_weekend": "16:59:59",
"tz": false,
"wd": {
"monday": true,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false
}
},
"dp": {
"name": "DomainDialerBatchDPQueue",
"queue_id": 89,
"audio_before": {
"list": []
},
"strategy": {
"name": "DomainDialerQueueStrategyProgressive",
"check_agents": true
}
}
}
}
Создание пакета с типом Проиграть уведомление
Ответившему клиенту проигрывается заданное аудио (объявление, напоминание и т.п.).
{
"action": "append",
"obj": "DomainDialerBatch",
"action_id": "fccd-b670-9201-32c8",
"params": {
"domain_id": 34,
"name": "Test",
"delay_next_call": 60,
"contacts_by_status": null,
"is_active": null,
"lines": 1,
"link": "",
"max_calls": 1,
"status": 0,
"target_time": 10,
"outbound_dp_id": 948,
"priority": 0,
"target": {
"type": 0,
"value": 100
},
"schedule": {
"dt_start": 1707091200,
"dt_end": 1707782399,
"time_start": "09:00:00",
"time_end": "17:59:59",
"time_start_weekend": "11:00:00",
"time_end_weekend": "16:59:59",
"tz": false,
"wd": {
"monday": true,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false
}
},
"dp": {
"name": "DomainDialerBatchDPPlayback",
"audio": {
"list": [
{
"id": 775,
"dpe_name": "DPEAudioSystem"
}
]
}
}
}
}
Создание пакета с типом Вызов на маршрут
Ответивший клиент отправляется в указанный маршрут (диалплан) для дальнейшей обработки.
{
"action": "append",
"obj": "DomainDialerBatch",
"action_id": "55cf-e07a-a1bc-6d18",
"params": {
"domain_id": 34,
"name": "Test",
"delay_next_call": 60,
"contacts_by_status": null,
"is_active": null,
"lines": 1,
"link": "",
"max_calls": 1,
"status": 0,
"target_time": 10,
"outbound_dp_id": 948,
"priority": 0,
"target": {
"type": 0,
"value": 100
},
"schedule": {
"dt_start": 1707091200,
"dt_end": 1707782399,
"time_start": "09:00:00",
"time_end": "17:59:59",
"time_start_weekend": "11:00:00",
"time_end_weekend": "16:59:59",
"tz": false,
"wd": {
"monday": true,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false
}
},
"dp": {
"name": "DomainDialerBatchDPDP",
"dp_id": 979
}
}
}
Создание пакета с типом Актуализация контактов
Обзвон для проверки и актуализации номеров: фиксируется факт дозвона без соединения с оператором.
{
"action": "append",
"obj": "DomainDialerBatch",
"action_id": "8ae1-34ba-e36e-2d0c",
"params": {
"domain_id": 34,
"name": "Test",
"delay_next_call": 60,
"dp": {
"name": "DomainDialerBatchDPCheck"
},
"contacts_by_status": null,
"is_active": null,
"lines": 1,
"link": "",
"max_calls": 1,
"status": 1,
"target_time": 10,
"outbound_dp_id": 948,
"priority": 0,
"target": {
"type": 0,
"value": 100
},
"schedule": {
"dt_start": 1707177600,
"dt_end": 1707868799,
"time_start": "09:00:00",
"time_end": "17:59:59",
"time_start_weekend": "11:00:00",
"time_end_weekend": "16:59:59",
"tz": false,
"wd": {
"monday": true,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false
}
}
}
}
Создание пакета с типом Анкетирование
Ответившему клиенту проигрываются вопросы, а его ответы (нажатия клавиш/оценки) сохраняются.
{
"action": "append",
"obj": "DomainDialerBatch",
"action_id": "a6c3-0af1-aa74-6c5c",
"params": {
"domain_id": 34,
"name": "Test",
"delay_next_call": 60,
"contacts_by_status": null,
"is_active": null,
"lines": 1,
"link": "",
"max_calls": 1,
"status": 0,
"target_time": 10,
"outbound_dp_id": 948,
"priority": 0,
"target": {
"type": 0,
"value": 100
},
"schedule": {
"dt_start": 1707177600,
"dt_end": 1707868799,
"time_start": "09:00:00",
"time_end": "17:59:59",
"time_start_weekend": "11:00:00",
"time_end_weekend": "16:59:59",
"tz": false,
"wd": {
"monday": true,
"tuesday": true,
"wednesday": true,
"thursday": true,
"friday": true,
"saturday": false,
"sunday": false
}
},
"dp": {
"name": "DomainDialerBatchDPQuestions",
"audio_before": {
"list": [
{
"id": 775,
"dpe_name": "DPEAudioSystem"
}
]
},
"audio_after": {
"list": [
{
"id": 320,
"dpe_name": "DPEAudioSystem"
}
]
},
"questions": [
{
"max_value": 10,
"min_value": 0,
"wait_time": 5,
"save_error_value": true,
"allow_speech": false,
"audio_before": {
"list": [
{
"id": 733,
"dpe_name": "DPEAudioSystem"
}
]
}
}
]
}
}
}
Добавление контактов
{
"action": "append",
"obj": "DomainDialerContact",
"action_id": "b02a-10e0-c02a-b6e2",
"params": {
"domain_id": 34,
"batch_id": 334,
"phone": "7XXXXXXXXXX",
"tz": "Europe/Moscow",
"extra_fields": {}
}
}
Примечание
Если необходимо добавить несколько номеров, добавьте в запрос отдельные объекты с параметрами «phone» и «extra_fields».
Добавление контактов через Excel-файл
{
"action": "import",
"obj": "DomainDialerContact",
"action_id": "6748-7c0b-69fc-3125",
"params": {
"contacts": [
{
"phone": "7XXXXXXXXXX",
"extra_fields": {
"FIO": "Иванов А.И."
},
"tz": null
}
],
"batch_id": 337,
"domain_id": 34
}
}
Удаление контактов
{
"action": "delete",
"obj": "DomainDialerContact",
"action_id": "9fb2-acbc-a705-7777",
"params": {
"id": 14087,
"domain_id": 34
}
}
Примечание
Удаление доступно только по одному контакту.
Список контактов
{
"action": "list",
"obj": "DomainDialerContact",
"action_id": "6078-9fb0-2f26-ca4b",
"params": {
"domain_id": 34
},
"limit": 100,
"offset": 0,
"filter": {
"field_list": [
{
"field": "batch_id",
"condition_type": 0,
"value": 333
},
{
"field": "status",
"condition_type": 0,
"value": "0"
}
],
"type": 0
}
}
Статусы и коды
Статус пакета (DomainDialerBatch.status): 0 — выключен, 1 — включён.
Статус контакта (DomainDialerContact.status): 0 — обрабатывается, 1 — успешно, 2 — попытки исчерпаны, 3 — заблокирован.
Статус набора (DomainDialerContact.dial_status): 0 — ожидает набора, 1 — в наборе.
Статус попытки (DomainDialerAttempt.status): 0 — отвечен, 1 — нет ответа, 2 — занято, 5 — автоответчик, -1 — ошибка.
Тип цели (DomainAutoDialingBatchSuccessOption.type): 0 — по проценту завершённых контактов, 1 — по проценту успешных.
Дополнительные действия
Помимо стандартных, доступны действия:
для
DomainDialerBatch:get(получить один пакет),update_status(переключить статус без полного обновления),get_dynamic(короткая статистика для предиктивного режима),delete_attempts(сбросить попытки у всех контактов пакета),delete_contacts(удалить контакты пакета, опционально поstatus),select;для
DomainDialerContact:copy(копировать контакты между пакетами —src_batch_id,dst_batch_id,status_list),export(выгрузка контактов в XLSX),attempt_list(список попыток контакта/пакета),attempt_journal/attempt_journal_xlsx/attempt_journal_csv(журнал попыток),reset_attempts(сбросить попытки и динамические поля контакта),switch_lock(блокировка контакта —status: 1 заблокировать, 0 разблокировать).