/domain/<DOMAIN>/cfc/ - команды управления службой CFC
В данном разделе описываются команды управления службой CFC (Call Forwarding by Cause).
Служба CFC отвечает за маршрутизацию вызовов по причине разъединения - неуспешные вызовы могут маршрутизироваться на автоинформатор по определенной причине разъединения. Для настройки службы CFC необходимо настроить соответствие между причиной разъединения (ISUP или ACP cause) и мелодией, которая должна проигрываться на данное событие.
Для администратора виртуальной АТС команды выполняются на уровне виртуальной АТС в разделе domain/<DOMAIN>/cfc/ и применяются только для определенной виртуальной АТС.
<CORE> - имя кластера CORE;
<DOMAIN> - имя виртуальной АТС.
clean
Данной командой осуществляется установка автоинформатора по умолчанию для определенной причины "сause" службы CFC:
В таблице 1 указаны параметры и значения по умолчанию для службы CFC.
Описание внутренних причин разъединения (АСР сause) приведено в Приложении Г. Описание внутренних причин разъединения.
Путь команды:
/domain/<DOMAIN>/cfc/clean
Синтаксис:
clean [<FIELD>] [--force]
Параметры:
<FIELD> - внутренняя причина разъединения (cause). Если не указывать данный параметр, то значения по умолчанию будут восстановлены для всех "сause";
--force - выполнение команды без запроса подтверждения.
Пример:
admin@ds1@ecss1:/$ domain/biysk.local/cfc/clean external_isup_causes Property external_isup_causes values successfully restored [exec at: 15.02.2021 16:23:26, exec time: 221ms, nodes: core1@ecss1 v.3.14.7.578] admin@ds1@ecss1:/$ domain/biysk.local/cfc/clean apty_abandon Property apty_abandon values successfully restored [exec at: 15.02.2021 16:23:37, exec time: 211ms, nodes: core1@ecss1 v.3.14.7.578]
info
Команда просмотра установленных значений автоинформаторов для "сause" сервиса CFC.
Путь команды:
/domain/<DOMAIN>/cfc/info
Синтаксис:
info [<FIELD>]
Параметры:
<Field> - название свойства, принимает значения, указанные в таблице 1.
admin@ds1@ecss1:/$ domain/biysk.local/cfc/info ┌──────────────────────────────┬───────────┬─────────────────────────────────────────────┐ │ Property │ Domain │ Value │ ├──────────────────────────────┼───────────┼─────────────────────────────────────────────┤ │anonymity_disallowed │biysk.local│ │ │apty_abandon │biysk.local│ │ │apty_disc │biysk.local│ │ │authorisation_failure │biysk.local│system://sounds/ai_wrong_number.wav │ │bpty_busy_ndub │biysk.local│ │ │bpty_busy_udub │biysk.local│ │ │bpty_disc │biysk.local│ │ │bpty_no_answer │biysk.local│system://sounds/ai_no_answer.wav │ │call_being_forwarded │biysk.local│ │ │called_party_rejected │biysk.local│ │ │collect_information_failure │biysk.local│system://sounds/ai_wrong_number.wav │ │conversation_timeout │biysk.local│system://sounds/ai_conversation_timeout.wav │ │destination_out_of_order │biysk.local│system://sounds/ai_error.wav │ │do_not_disturb │biysk.local│ │ │enable │biysk.local│true │ │external_acp_causes │biysk.local│ │ │external_isup_causes │biysk.local│1 -> system://sounds/ai_number_absent.wav │ │ │ │2 -> system://sounds/ai_wrong_number.wav │ │ │ │3 -> system://sounds/ai_wrong_number.wav │ │ │ │18 -> system://sounds/ai_not_reachable.wav │ │ │ │19 -> system://sounds/ai_no_answer.wav │ │ │ │20 -> system://sounds/ai_notconnected.wav │ │ │ │21 -> system://sounds/ai_notaccess.wav │ │ │ │22 -> system://sounds/ai_number_not_ready.wav│ │ │ │27 -> system://sounds/ai_out_of_order.wav │ │ │ │28 -> system://sounds/ai_invalidnumber.wav │ │ │ │34 -> system://sounds/ai_overload.wav │ │ │ │38 -> system://sounds/ai_error.wav │ │ │ │41 -> system://sounds/ai_error.wav │ │ │ │42 -> system://sounds/ai_system_problem.wav │ │ │ │44 -> system://sounds/ai_overload.wav │ │ │ │88 -> system://sounds/ai_out_of_order.wav │ │ │ │102 -> system://sounds/ai_timeout.wav │ │foreground │biysk.local│false │ │invalid_collected_information │biysk.local│system://sounds/ai_wrong_number.wav │ │invalid_number │biysk.local│system://sounds/ai_invalidnumber.wav │ │no_circuit_available │biysk.local│system://sounds/ai_badroute.wav │ │no_requested_circuit_available│biysk.local│system://sounds/ai_badroute.wav │ │normal │biysk.local│ │ │not_reachable │biysk.local│system://sounds/ai_not_reachable.wav │ │number_incomplete │biysk.local│system://sounds/ai_invalidnumber.wav │ │o_no_answer │biysk.local│system://sounds/ai_no_answer.wav │ │origination_denied │biysk.local│system://sounds/ai_notaccess.wav │ │route_failure1 │biysk.local│ │ │route_failure2 │biysk.local│ │ │route_select_failure │biysk.local│system://sounds/ai_out_of_order.wav │ │ss7_failure │biysk.local│system://sounds/ai_system_problem.wav │ │system_failure │biysk.local│system://sounds/ai_system_problem.wav │ │t_exception │biysk.local│system://sounds/ai_system_problem.wav │ │termination_denied │biysk.local│system://sounds/ai_tempdenied.wav │ │unassigned_number │biysk.local│system://sounds/ai_notconnected.wav │ └──────────────────────────────┴───────────┴─────────────────────────────────────────────┘ [exec at: 15.02.2021 16:17:44, exec time: 39ms, nodes: core1@ecss1 v.3.14.7.578]
set
Данной командой выполняется настройка соответствия между внутренним событием и мелодией автоинформатора.
Путь команды:
/domain/<DOMAIN>/cfc/set
Синтаксис:
set <FIELD> <VALUE>
Параметры:
<FIELD> - имя свойства, значение которого необходимо изменить. Описание внутренних причин разъединения приведено Части 5 Руководство по обслуживанию системы ECSS-10, в Приложении Г. Описание внутренних причин разъединения.
<VALUE> - новое значение свойства
Для всех свойств доступны значения:
- disable - автоинформатор отключен;
- system <FILE> - проигрывание файла <FILE>;
- tone tone <FREQUENCY1> <FREQUENCY2> <TONE_ON> <TONE_OFF> <DURATION>;
<FREQUENCY> - частота сигнала (Гц). Если нужно использовать одночастотный сигнал, то для второй частоты установите значение 0;
<TONE_ON> - время проигрывания сигнала (ms);
<TONE_OFF> - время проигрывания тишины (время между сигналами) (ms);
<DURATION> - общее время проигрывания тона (dutation = -1 - бесконечное количество повторов).
Исключение составляют свойства:
1. enable - состояние CFC-службы
Принимает значения:
- true - включение CFC-службы;
- false - отключение CFC-службы.
2. external_acp_causes и external_isup_causes - управление дополнительными автоинформаторами на заданный ACP или ISUP Cause
Используемые значения:
- add <Произвольный ACP Cause> <Номер автоинформатора> disable | system | tone - для добавления дополнительного автоинформатора на заданный ACP Cause;
- remove <ACP Cause> - для удаления автоинформатора для определенного <ACP Cause>.
3. foreground - принудительное озвучивание причины разъединения
Принимает значения:
- true - разрешить принудительное озвучивание причины разъединения данным сервисом;
- false - запретить принудительное озвучивание причины разъединения данным сервисом.
Для выполнения вызова на существующего абонента вместо автоинформатора необходимо в качестве [Идентификатор тона] указать значение "call".
Примеры:
Добавление автоинформатора для apty_abandon:
admin@ds1@ecss1:/$ domain/biysk.local/cfc/set apty_abandon system sounds/ai_busy.wav Property "apty_abandon" successfully changed from: to system://sounds/ai_busy.wav. [exec at: 15.02.2021 16:22:46, exec time: 221ms, nodes: core1@ecss1 v.3.14.7.578]
% Добавление произвольного ISUP Cause:
admin@ds1@ecss1:/$ domain/biysk.local/cfc/set external_isup_causes add 88 system sounds/ai_out_of_order.wav Property "external_isup_causes" successfully changed from: 1 -> system://sounds/ai_number_absent.wav 2 -> system://sounds/ai_wrong_number.wav 3 -> system://sounds/ai_wrong_number.wav 18 -> system://sounds/ai_not_reachable.wav 19 -> system://sounds/ai_no_answer.wav 20 -> system://sounds/ai_notconnected.wav 21 -> system://sounds/ai_notaccess.wav 22 -> system://sounds/ai_number_not_ready.wav 27 -> system://sounds/ai_out_of_order.wav 28 -> system://sounds/ai_invalidnumber.wav 34 -> system://sounds/ai_overload.wav 38 -> system://sounds/ai_error.wav 41 -> system://sounds/ai_error.wav 42 -> system://sounds/ai_system_problem.wav 44 -> system://sounds/ai_overload.wav 102 -> system://sounds/ai_timeout.wav to 1 -> system://sounds/ai_number_absent.wav 2 -> system://sounds/ai_wrong_number.wav 3 -> system://sounds/ai_wrong_number.wav 18 -> system://sounds/ai_not_reachable.wav 19 -> system://sounds/ai_no_answer.wav 20 -> system://sounds/ai_notconnected.wav 21 -> system://sounds/ai_notaccess.wav 22 -> system://sounds/ai_number_not_ready.wav 27 -> system://sounds/ai_out_of_order.wav 28 -> system://sounds/ai_invalidnumber.wav 34 -> system://sounds/ai_overload.wav 38 -> system://sounds/ai_error.wav 41 -> system://sounds/ai_error.wav 42 -> system://sounds/ai_system_problem.wav 44 -> system://sounds/ai_overload.wav 88 -> system://sounds/ai_out_of_order.wav 102 -> system://sounds/ai_timeout.wav. [exec at: 15.02.2021 16:16:09, exec time: 212ms, nodes: core1@ecss1 v.3.14.7.578]
Автоинформатор при получении отбоя по радиус
Существует возможность включить голосовое сообщение информирующее клиента о причине отключения,
для этого необходимо передать в пакете Access-Reject атрибут Reply-Message, данный атрибут может принимать следующие значения:
- ecss-routing-cause-isup=<INT>
- ecss-routing-cause-acp=<String>
Пример:
Конфигурация для freeradius(etc/freeradius/users):
1010 Auth-Type := Reject Reply-Message = "ecss-routing-cause-acp=systemFailure" 1111 Auth-Type := Reject Reply-Message = "ecss-routing-cause-isup=30"
Настройка голосовых сообщений для acp_cause:
admin@ds1@ecss1:/$ domain/biysk.local/cfc/set system_failure system sounds/ai_system_problem.wav Property "system_failure" successfully changed from: system://sounds/ai_system_problem.wav to system://sounds/ai_system_problem.wav. [exec at: 15.02.2021 16:21:16, exec time: 215ms, nodes: core1@ecss1 v.3.14.7.578]
Настройка голосовых сообщений для isup_cause:
admin@ds1@ecss1:/$ domain/biysk.local/cfc/set external_isup_causes add 30 system sounds/ai_no_money_to_call.wav Property "external_isup_causes" successfully changed from: 1 -> system://sounds/ai_number_absent.wav 2 -> system://sounds/ai_wrong_number.wav 3 -> system://sounds/ai_wrong_number.wav 18 -> system://sounds/ai_not_reachable.wav 19 -> system://sounds/ai_no_answer.wav 20 -> system://sounds/ai_notconnected.wav 21 -> system://sounds/ai_notaccess.wav 22 -> system://sounds/ai_number_not_ready.wav 27 -> system://sounds/ai_out_of_order.wav 28 -> system://sounds/ai_invalidnumber.wav 34 -> system://sounds/ai_overload.wav 38 -> system://sounds/ai_error.wav 41 -> system://sounds/ai_error.wav 42 -> system://sounds/ai_system_problem.wav 44 -> system://sounds/ai_overload.wav 88 -> system://sounds/ai_out_of_order.wav 102 -> system://sounds/ai_timeout.wav to 1 -> system://sounds/ai_number_absent.wav 2 -> system://sounds/ai_wrong_number.wav 3 -> system://sounds/ai_wrong_number.wav 18 -> system://sounds/ai_not_reachable.wav 19 -> system://sounds/ai_no_answer.wav 20 -> system://sounds/ai_notconnected.wav 21 -> system://sounds/ai_notaccess.wav 22 -> system://sounds/ai_number_not_ready.wav 27 -> system://sounds/ai_out_of_order.wav 28 -> system://sounds/ai_invalidnumber.wav 30 -> system://sounds/ai_no_money_to_call.wav 34 -> system://sounds/ai_overload.wav 38 -> system://sounds/ai_error.wav 41 -> system://sounds/ai_error.wav 42 -> system://sounds/ai_system_problem.wav 44 -> system://sounds/ai_overload.wav 88 -> system://sounds/ai_out_of_order.wav 102 -> system://sounds/ai_timeout.wav. [exec at: 15.02.2021 16:21:53, exec time: 218ms, nodes: core1@ecss1 v.3.14.7.578]