Маршрутизация входящего вызова в другой транк. Перенаправление звонков между транками в FreePBX 14
Столкнулся недавно с задачей по маршрутизации звонков между несколькими FreePBX соединенными SIP-транками. Необходимо вызов пришедший из одного SIP-транка на определенный номерной план передать в другой SIP-транк.
Имеется три АТС на базе FreePBX (13, 14) — FreePBX «A» (номерной план 1ХХ
), FreePBX «B» (номерной план 2ХХ
), FreePBX «C» (номерной план 3ХХ
). Которые соединены между собой SIP-транками следующим образом:
FreePBX «A» <—-SIP TRUNK «A»—-> FreePBX «B» <—-SIP TRUNK «B»—-> FreePBX «C»
Для наглядности рассмотрим к примеру ситуацию когда необходимо дозваниваться с FreePBX "A" (1ХХ)
до абонентов находящихся в FreePBX "С" (3ХХ)
и в обратном направлении.
Можно конечно решить задачу соединив отдельным SIP-транком FreePBX "A"
и FreePBX "С"
, но рассмотрим другой вариант, когда к примеру нет возможности соединить их на прямую, тогда в этом случае посредником для звонков будет выступать FreePBX «B», т.к. он имеет связь по SIP-транку с FreePBX "С"
и FreePBX "A"
.
Заходим на FreePBX «B» в файл /etc/asterisk/extensions_custom.conf
добавляем обработки:
[from-pstn-custom]
; Перевод на FreePBX "C"
exten => _3XX,1,Goto(outbound-allroutes,${EXTEN},1)
; Перевод на FreePBX "A"
exten => _1XX,1,Goto(outbound-allroutes,${EXTEN},1)
from-pstn-custom
принимает звонок на 3XX
или 1XX
и передает его сразу в контекст outbound-allroutes
, где далее будет определен необходимый исходящий маршрут для вызова.Контекст outbound-allroutes
содержит в себе все правила исходящей маршрутизации, посмотреть эту секцию можно в файле /etc/asterisk/extensions_additional.conf
:
[outbound-allroutes]
include => outbound-allroutes-custom
include => outrt-3 ; Russia
include => outrt-4 ; Ukraine
include => outrt-5 ; Belarus
include => outrt-6 ; FreePBX "A"
include => outrt-7 ; FreePBX "C"
exten => foo,1,Noop(bar)
;--== end of [outbound-allroutes] ==--;
Вместо контекста outbound-allroutes
можно указать конкретные исходящие маршруты, для 3XX - outrt-6
, а для 1ХХ - outrt-6
. В случае указания outbound-allroutes
, то поиск подходящего исходящего маршрута будет перебором по очереди.
ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ
Обсуждение
Нет комментариев.