"Автообзвон" — сервис автоматизированного дозвона до абонентов по заданным номерам и отработки сценария разговора по гибкому запрограммированному шаблону. В качестве сценария используется IVR-скрипт, в блоках которого могут содержаться переменные, которые затем заполнятся данными в шаблонах "Автообзвона".
Первоначально, переменная должна быть описана в IVR-скрипте, и только потом ее можно добавить, в качестве параметра, в шаблоне. |
Для запуска сервиса звукового обзвона абонентов необходимо произвести следующие действия:
Выполнить команду:
/cluster/storage/<DS>/licence/show-licence <LicenceID> |
Проверить строку Channels on dialer outgoing calls - количество одновременных каналов, которые может занять автообзвонщик в системе. Если параметр отсутствует - необходимо удостовериться, что лицензия была корректно установлена и в ней доступен автообзвонщик.
Пример:
/cluster/storage/ds1/licence/show-licence 2 SSW ID ECSS-TEST-12 Upper version 3.14.15 Description Лицензия для тестирования 12 . . . Channels on dialer outgoing calls 100 Total count of simultaneous records voice calls 100000 Virtual subscribers limit 600000 Subscribers limit 600000 |
Выполнить команду:
/cluster/core/core1/dialer/db/info |
Пример:
/cluster/core/core1/dialer/db/info ┌──────────────┬─────────────────┐ │ Property │ Value │ ├──────────────┼─────────────────┤ │mysql_database│ecss_dialer_db │ │mysql_enabled │true │ │mysql_host │dialer.mysql.ecss│ │mysql_password│******** │ │mysql_port │3306 │ │mysql_user │dialer_db │ └──────────────┴─────────────────┘ |
Выполнить команду:
/domain/<DOMAIN>/properties/restrictions/info |
Проверить параметр dialer\channels - количество одновременных каналов в домене, которые может занять автообзвонщик.
Пример:
/domain/test_domain/properties/restrictions/info ┌────────────────────────────────┬────────┬────────────────────────────────────────────────────────────────┐ │ Restriction │ Value │ Description │ ├────────────────────────────────┼────────┼────────────────────────────────────────────────────────────────┤ │alias_limit │infinity│Total aliases in current domain │ │virtual_alias_limit │infinity│Total virtual aliases in current domain │ │call_limit │infinity│Total active calls for current domain │ │digitmap │ │Digitmap for current domain │ │callcenter\enabled │true │Enable Call-center service for current domain │ │callcenter\active_agents │infinity│Total logged in agents for Call-center for current domain │ │callcenter\active_supervisors │infinity│Total logged in supervisors for Call-center for current domain │ │tc\active_conferences │infinity│Total active Teleconferences for current domain │ │tc_count_active_channels │infinity│Total active channels for Teleconference for current domain │ │teleconference\enabled │false │Enable Teleconference service for current domain │ │tsmn\concurrent_calls │0 │Total counts of concurrent calls on master trunk for TSMN system│ │tsmn\concurrent_calls\redundancy│0 │Total counts of concurrent calls on backup trunk for TSMN system│ │add_on_conferences_limit │infinity│Total active Add-on conferences for current domain │ │meet_me_limit │infinity│Total active meet me for current domain │ │chat_room_limit │infinity│Total active 'Chat rooms' for current domain │ │dialer\channels │10 │Channels on dialer outgoing calls │ │recorder\voice\channels │infinity│Total count of simultaneous records voice calls │ │ivr\enabled │true │Enable IVR service for current domain │ │ivr\incoming_script\enabled │false │Enable incoming IVR script for current domain │ │failover │true │Domain is support failover │ │ss_package │infinity│Count of licence from ss package in current domain │ │elph\member\limit │infinity│Total count of members of the one Elph group │ └────────────────────────────────┴────────┴────────────────────────────────────────────────────────────────┘ |
Для установки необходимого количества каналов, выполнить команду:
/domain/<DOMAIN>/properties/restrictions/set dialer\channels <LIMIT> |
где
Укажем максимальное количество доступных линий для данного домена.
Пример:
/domain/test_domain/properties/restrictions/set dialer\channels 20 Restriction dialer\channels changed from 10 to 20. |
Выполнить команду:
/domain/<DOMAIN>/timers/core/info tts_availability_check_timeout |
Пример:
/domain/test_domain/timers/core/info tts_availability_check_timeout ┌──────────────────────────────┬───────────┬─────┐ │ Property │ Domain │Value│ ├──────────────────────────────┼───────────┼─────┤ │tts_availability_check_timeout│test_domain│2m │ └──────────────────────────────┴───────────┴─────┘ |
При необходимости изменить значение следующей командой:
/domain/test_domain/timers/core/set tts_availability_check_timeout 2m 10s [5s; 5m] (example: 4m 59s 999ms) |
Выполнить команду:
/domain/<DOMAIN>/properties/info dialer_repeat_acp_causes |
Пример:
/domain/test_domain/properties/info dialer_repeat_acp_causes ┌────────────────────────┬───────────┬───────────────────────────┐ │ Property │ Domain │ Value │ ├────────────────────────┼───────────┼───────────────────────────┤ │dialer_repeat_acp_causes│test_domain│calledPartyRejected │ │ │ │noCircuitAvailable │ │ │ │noRequestedCircuitAvailable│ └────────────────────────┴───────────┴───────────────────────────┘ |
При необходимости изменить значение следующей командой:
/domain/test_domain/properties/set dialer_repeat_acp_causes (add or remove) Enter an ACP cause (maybe with initiator: Cause/CauseInitiator): aPtyAbandon aPtyDisc authorisationFailure bPtyBusyNDUB bPtyBusyUDUB bPtyDisc bPtyNoAnswer collectInformationFailure conversationTimeout destinationOutOfOrder doNotDisturb genericPreemption heartbeat invalidCollectedInformation invalidNumber nonIpPreemption normal notReachable numberIncomplete oNoAnswer originationDenied reservedResourcesPreemted routeFailure1 routeFailure2 routeSelectFailure ss7Failure systemFailure tException terminationDenied tooManyHops uaPreemption unassignedNumber unsupportedMedia |
Сконфигурировать абонентов автодозвона через CLI можно двумя способами, вручную или импортировать из .csv файла.
Выполнить следующие команды:
/domain/<DOMAIN>/ss/dialer/abonent/declare <ABONENT_NAME> <ABONENT_PRIORITY> <ABONENT_NUMBER_LIST> |
Пример:
/domain/test_domain/ss/dialer/abonent/declare "fedorov fedja" 4 [42001] Abonent fedorov fedja declared successfully |
При необходимости можно добавить свойства абонента, следующей командой:
/domain/<DOMAIN>/ss/dialer/abonent/set <ABONENT_NAME> <OPTIONS> |
где:
<OPTIONS> = --name / --number_add / --number_remove / --priority / --property_name
Пример:
/domain/test_domain/ss/dialer/abonent/set "fedorov fedja" --property_name FIO --property_value "Фёдоров Фёдор" Options for abonent "fedorov fedja" successfully set /domain/test_domain/ss/dialer/abonent/set "fedorov fedja" --property_name ranks --property_value sergeant Options for abonent "fedorov fedja" successfully set |
Посмотреть можно командой:
/domain/test_domain/ss/dialer/abonent/info ┌────────────────┬────────┬───────────┬──────────────────────────────────┐ │ Name │Priority│Number List│ Properties │ ├────────────────┼────────┼───────────┼──────────────────────────────────┤ │ivanov ivan │2 │42007 │FIO = Ivanov Ivan │ │ │ │42013 │ranks = captain │ │antonov anton │4 │42003 │FIO = Антонов Антон │ │ │ │ │ranks = sergeant │ │vasilev vasja │4 │42005 │FIO = Василий Васильев │ │ │ │ │ranks = sergeant │ │stepanov stepan │4 │50001 │FIO = Степан Степанов │ │ │ │ │ranks = sergeant │ │petrov petr │1 │42009 │ranks = major │ │ │ │42011 │ │ │semen semenich │3 │42012 │FIO = Semenov Semen Semenovich │ │ │ │ │ranks = lieutenant │ │alekseev aleksey│3 │50000 │FIO = Alekseev Aleksey Alekseevich│ │ │ │ │ranks = lieutenant │ │fedorov fedja │4 │42001 │FIO = Фёдоров Фёдор │ │ │ │ │ranks = sergeant │ └────────────────┴────────┴───────────┴──────────────────────────────────┘ Total abonents: 8 Total numbers: 10 |
При необходимости можно собрать абонентов в группы абонентов автообзвона следующими командами:
/domain/<DOMAIN>/ss/dialer/abonent/group/declare <ABONENT_GROUP> /domain/<DOMAIN>/ss/dialer/abonent/group/add <ABONENT_GROUP> <ABONENT_NAME> |
где:
Пример:
/domain/test_domain/ss/dialer/abonent/group/declare sergeant Group created succesfully /domain/test_domain/ss/dialer/abonent/group/add sergeant "fedorov fedja" Abonents added in group succesfully: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │fedorov fedja │ └────────────────────┘ /domain/test_domain/ss/dialer/abonent/group/add sergeant "antonov anton" Abonents added in group succesfully: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │antonov anton │ └────────────────────┘ /domain/test_domain/ss/dialer/abonent/group/add sergeant "vasilev vasja" Abonents added in group succesfully: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │vasilev vasja │ └────────────────────┘ /domain/test_domain/ss/dialer/abonent/group/add sergeant "stepanov stepan" Abonents added in group succesfully: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │stepanov stepan │ └────────────────────┘ /domain/test_domain/ss/dialer/abonent/group/info Group: captain Abonents: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │ivanov ivan │ └────────────────────┘ Group: sergeant Abonents: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │fedorov fedja │ │antonov anton │ │vasilev vasja │ │stepanov stepan │ └────────────────────┘ Group: lieutenant Abonents: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │semen semenich │ │alekseev aleksey │ └────────────────────┘ Group: major Abonents: ┌────────────────────┐ │Abonents │ ├────────────────────┤ │petrov petr │ └────────────────────┘ |
Файл должен быть размещен на хосте по пути - "/var/lib/ecss/dialer/abonents/<DOMAIN>/"
.csv<АБОНЕНТ> <НОМЕРА/НОМЕРА (через пробел)> <ПРИОРИТЕТ> <ГРУППА/ГРУППЫ (через пробел)> [<СВОЙСТВО_1> <СВОЙСТВО_2>...]Пример файла (разделитель ";")
импортируется как:
Абонент petrov petr с номерами [42009 42011] с приоритетом 1 и с свойством: ranks = "major"
Абонент ivanov ivan с номерами [42007 42013] с приоритетом 2 и с свойством: ranks = "captain" / FIO = "Ivanov Ivan"
Абонент semen semenich c номером [42012] с приоритетом 3 и с свойством: ranks = "lieutenant" / FIO = "Semenov Semen Semenovich"
Абонент alekseev aleksey c номером [50000] с приоритетом 3 и с свойством: ranks = "lieutenant" / FIO = "Alekseev Aleksey Alekseevich"
Группа абонентов lieutenant, в которой находятся абоненты semen semenich и lekseev aleksey, группа абонентов captain в которой находится абонент ivanov ivan и группа абонентов major в которой находится абонент petrov petr.
abonents;numbers;prior;group;FIO;ranks petrov petr;42009 42011;1;major;;major ivanov ivan;42007 42013;2;captain;Ivanov Ivan;captain semen semenich;42012;3;lieutenant;Semenov Semen Semenovich;lieutenant alekseev aleksey;50000;3;lieutenant;Alekseev Aleksey Alekseevich;lieutenant |
/domain/<DOMAIN>/ss/dialer/abonent/abonents-import <HOSTNAME> <FILENAME> [--campaign_group_name <CAMPAIGN_GROUP_NAME> --column_delimiter semicolon --overwrite] |
где:
" (точка с запятой),(доступны colon/comma/dot/semicolon);Пример:
/domain/test_domain/ss/dialer/abonent/abonents-import ecss1 sub.csv --overwrite
[abonents-import] All existing abonents and abonent groups will be deleted
(also campaign groups will be empty) - before importing new ones.
Continue?: [no]/yes ?> yes
Executing import by chunk... (total: 1)
[**********************************************************************] 4ms
Success:
+ imported 4 abonents.
+ affected 0 abonents. |
Выполнить команду:
/domain/<DOMAIN>/ss/dialer/abonent/campaign/declare <CAMPAIGN_NAME> |
Пример:
/domain/test_domain/ss/dialer/abonent/campaign/declare MCHS Success: Campaign "MCHS" has been declared |
Выполнить команду:
domain/<DOMAIN>/ss/dialer/abonent/campaign/add <CAMPAIGN_NAME> --abonent <ABONENT_NAME> или domain/<DOMAIN>/ss/dialer/abonent/campaign/add <CAMPAIGN_NAME> --group <ABONENT_GROUP> |
Пример:
/domain/test_domain/ss/dialer/abonent/campaign/add MCHS --group sergeant Success: Group "sergeant" has been added. /domain/test_domain/ss/dialer/abonent/campaign/add MCHS --abonent "petrov petr" Success: Abonent "petrov petr" has been added. /domain/test_domain/ss/dialer/abonent/campaign/add MCHS --abonent "ivanov ivan" Success: Abonent "ivanov ivan" has been added. /domain/test_domain/ss/dialer/abonent/campaign/add MCHS --abonent "semen semenich" Success: Abonent "semen semenich" has been added. /domain/test_domain/ss/dialer/abonent/campaign/info MCHS ┌────────┬───────────────┐ │Group │Abonents │ ├────────┼───────────────┤ │sergeant│fedorov fedja │ │ │antonov anton │ │ │vasilev vasja │ │ │stepanov stepan│ ├────────┼───────────────┤ │ │petrov petr │ │ │ivanov ivan │ │ │semen semenich │ └────────┴───────────────┘ |
Для синтеза речи, необходимо задать параметры Яндекс TTS (text to speach/ перевод текста в голос) на уровне настроек скрипта. Для входа в меню настроек нажмите кнопку
.

Для синтеза речи необходимо в блоке Play или IVR выбрать в качестве ресурса пункт "Синтез речи".


В появившемся окне необходимо заполнить поле "Текст" — текст для синтеза. Имеется возможность задания переменных, для этого необходимо заключить имя переменной между знаками % (для примера %Имя%).
| Подробнее про настройку IVR-скриптов для создания сценариев можно прочитать в разделе IVR. |
Необходимо произвести обзвон по следующему сценарию:
1. Приветствие.
Вас приветствует Система Автообзвона. Ваше звание: RANKS?
2. Подтверждение имени.
Вас зовут FIO?
3. Озвучивание причины оповещения.
Уведомляю вас о необходимости явится с документами по месту работы к началу рабочего дня %DATE%.
4. Прощание.
Хорошего дня.
В случае если звонок не удался или продлился менее 10 секунд, необходимо произвести повторный звонок не менее чем через 15 минут.
Общее количество попыток не должно превышать 3. Обзвон производить в интервале с 09:00–18:00. Количество одновременно занятых линий — не более 2.

Настройка блоков сценария:
ivr_1:
Синтез речи: "Вас приветствует Система Автообзвона."
Синтез речи: "Ваше звание: %RANKS%?"
Синтез речи: "Для подтверждения нажмите 1. В случае несогласия нажмите 3."
Синтез речи: "Для повторного прослушивания в любое время нажмите 0."
ivr_2:
Синтез речи: "Вас зовут %FIO%?"
Синтез речи: "Для подтверждения нажмите 1. В случае несогласия нажмите 3."
Синтез речи: "Для повторного прослушивания в любое время нажмите 0."
ivr_3:
Синтез речи: "Уведомляю вас о необходимости явится с документами по месту работы к началу рабочего дня."
Синтез речи: "%DATE%"
Синтез речи: "Для подтверждения сообщения нажмите 1."
Синтез речи: "Для повторного прослушивания в любое время нажмите 0."
play_1, play_2, play_3:
Синтез речи: "Хорошего дня." |
Выполнить команду:
/domain/<DOMAIN>/ss/dialer/template/declare <NAME> <DESCRIPTION> <SCRIPT> <OPERATOR_NUMBER>[, <OPERATOR_NUMBER>...] [<OPTIONS>] |
где:
Пример:
/domain/test_domain/ss/dialer/template/declare MCHS - dialer 42000 --lines_limit 5 --calls_limit 3 --priority 1 --group MCHS --abonent_priority true --min_duration 20 Campaign template successfully declared with id 06c690e5d9a7aebe |
Выполнить команду:
domain/<DOMAIN>/ss/dialer/declare <NAME> <TEMPLATE> <START_TYPE> [<OPTIONS>] |
где:
Пример:
/domain/test_domain/ss/dialer/declare MCHS MCHS now Dialer started with id: 1734595679290638 |
Выполнить команду:
/domain/<DOMAIN>/ss/dialer/start <CAMPAIGN_ID> <OPTIONS> |
где:
Пример:
/domain/test_domain/ss/dialer/start 1734597102923299 now Auto informator started started with id: 1734597102923299 |
Выполнить команду:
/domain/<DOMAIN>/ss/dialer/info <CAMPAIGN_ID> |
Пример:
/domain/test_domain/ss/dialer/info 1734597102923299 ┌───────────────┬──────┬────────┬───────────────────┬───────────────────┬───────────────────┬──┬────────────────┬──────┐ │ Abonent │Number│Priority│ Start time │ Answer time │ Release time │RC│ Status │Result│ ├───────────────┼──────┼────────┼───────────────────┼───────────────────┼───────────────────┼──┼────────────────┼──────┤ │fedorov fedja │42001 │- │19.12.2024 15:31:54│- │19.12.2024 15:31:54│3 │bPtyBusyNDUB │ │ │antonov anton │42003 │- │19.12.2024 15:31:56│- │19.12.2024 15:32:16│3 │bPtyNoAnswer │ │ │vasilev vasja │42005 │- │19.12.2024 15:31:52│19.12.2024 15:31:53│19.12.2024 15:31:54│2 │bPtyBusyNDUB │ │ │ivanov ivan │42007 │2 │19.12.2024 15:31:43│19.12.2024 15:31:46│19.12.2024 15:32:10│1 │normal │ │ │petrov petr │42009 │1 │19.12.2024 15:31:42│19.12.2024 15:31:45│19.12.2024 15:32:12│1 │normal │ │ │semen semenich │42012 │- │19.12.2024 15:31:54│- │19.12.2024 15:31:54│3 │unassignedNumber│ │ │stepanov stepan│50001 │- │19.12.2024 15:32:25│19.12.2024 15:32:33│19.12.2024 15:32:33│3 │bPtyBusyNDUB │ │ └───────────────┴──────┴────────┴───────────────────┴───────────────────┴───────────────────┴──┴────────────────┴──────┘ Success: 2 Failed: 5 ---------------- Total: 7 |
Для создания абонента/абонентов автообзвона необходимо открыть страницу "Автообзвон" в "Стандартном режиме" веб интерфейса ECSS10.
По умолчанию будет открыта закладка "Абоненты/Abonents".
Добавим абонента :
Пропишем дополнительные свойства абоненту:
Импортировать конфигурацию абонентов из *.csv файла:

Создать группу абонентов автообзвона и указать абонентов для этой группы:
В уже созданную группу абонентов автообзвона добавить дополнительных абонентов:

Данное действие выполняется за несколько шагов.
Создать группу компаний:
В зависимости от конфигурации добавить или группу абонентов:

Или добавить отдельных абонентов:

Первый шаг:

Второй шаг- конфигурация шаблона:

Шаг первый - Создать Кампанию:
Шаг второй - конфигурация компании, в случае необходимости можно изменить параметры из шаблона перед созданием компании, или просто выбрать режим старта компании и нажать "Создать":

Результат - кампания с ручным запуском создана, можно посмотреть информацию, можно запустить компанию автообзвона, можно удалить.

Просмотр:

Просмотр в момент выполнения автообзвона:

Просмотр информации индивидуального абонента:

Страница Ахрив:

Детальная информация:
Детальная информация по отдельному абоненту:
Данные так же можно экспортировать в файл *.csv или *.xlsx:
Результат:
"Проведено оповещение 5 абонентов по 5 телефонным номерам." "3 абонентов оповещено (60% от общего количества 5):" "3 абонентов подтвердили прием сообщения (60% от общего количества 5);" "0 абонентов не подтвердили (0% от общего количества 5);" "2 абонентов не оповещено (40% от общего количества 5):" "«нет ответа» - 1 абонентов;" "«по другим причинам» - 1 абонентов." "Длительность: 00:15:40" "Дата начала: 20.12.2024 14:30:04" "Дата обновления: 20.12.2024 14:45:44" Абонент;Номер;Приоритет;Время звонка;Время ответа;Попытка;Результат antonov anton;42003;4;20.12.2024 14:30:04;20.12.2024 14:30:07;1;"Вызов завершен" ivanov ivan;42007;2;20.12.2024 14:30:16;20.12.2024 14:30:18;1;"Вызов завершен" petrov petr;42009;1;20.12.2024 14:30:24;20.12.2024 14:30:26;1;"Вызов завершен" petrov petr;42009;-;20.12.2024 14:45:30;20.12.2024 14:45:32;2;"Вызов завершен" petrov petr;42011;1;20.12.2024 14:30:30;20.12.2024 14:30:26;1;"Номер набран верно, но он не назначен" semen semenich;42012;3;20.12.2024 14:30:25;-;1;"Номер набран верно, но он не назначен" semen semenich;42012;-;20.12.2024 14:45:40;-;2;"Номер набран верно, но он не назначен" alekseev aleksey;50000;3;20.12.2024 14:30:04;-;1;"Вызываемый абонент не отвечает" alekseev aleksey;50000;-;20.12.2024 14:45:24;-;2;"Вызываемый абонент не отвечает" |