Есть FreePBX 15, от операторов связи подключено 10 транков в разных регионах.
В регионах есть офисы, сотрудники могут перемещаться между офисами (командировки) со своими внутренними номерами (софтфоны на ноуте или мобильном), регистрация номеров только во внутренней сети.
FreePBX базово админят несколько человек (заводят номера, включают переадресации и тд).
Пытаюсь сделать маршрутизацию, что бы каждый офис при исходящий звонках (город, мобильный и тд) шел в свой транк оператора региона.
Прочитал, подсказали, несколько реализаций такого, как можно сделать, но столкнулся с некоторыми непониманием, прошу поправить, подсказать.
- Через Custom Contex:
- Сделать контекст для каждого исходящего маршрута
- В контексте разрешить исходящий маршрут
- Повесить этот контекст на номера офиса в определенном регионе
- Через модуль FreePBX Class of Service:
- Сделать CoS для каждого исходящего маршрута
- В CoS разрешить исходящий маршрут для номеров офиса в определенном регионе
- Через Outbound Routes -> Dial Patterns:
- В каждом Outbound Routes прописать в Dial Patterns CallerID номера офиса в определенном регионе
- С помощью API и dialplan
- Передавать вызываемый номер в num.voxlink.ru
- В ответ получать регион в котором находится вызываемый номер
- В dialplan направлять вызов в транк который подходит для данного региона
В реализации с num.voxlink.ru, все очень красиво должно получиться, в любых офисах исходящая маршрутизация будет идти через оптимального провайдера связи (так как укажите), но не понимаю как действовать, если сервис умрет или связь пропадет (забанят, отключат сам сервис, что-то еще).
В остальных реализациях, для себя вижу проблему:
- При заведении новых номеров для офисов, если админы где-то забудут указать номер (Contex, CoS, DialPattern), то он будет бегать "как хочет" по исходящим маршрутам
- При реализации через Outbound Routes -> Dial Patterns:
- Если номера офиса будут в разнобой, то будет огромный Dial Patterns
- Был номер 888 в офисе МСК
- Его удалили, через год завели номер 888 заново, но для офиса в СПб
- В Dial Patterns CallerID он остался в маршруте для МСК
- Если менеджер поедет в командировку в другой регион, то исходящие звонки будут идти через провайдера связи офиса постоянного его прибывания, а не через провайдера связи по месту его командировки
Есть ли возможность в asterisk (FreePBX), как-то сделать исходящую маршрутизацию, которая будет основываться на ip адресации телефонов офиса?
Допустим сеть 172.16.0.0/24 всегда заворачивать в транк МСК, а 172.16.1.0/24 в транк СПб.
Таким образом возможно будет избежать проблем, забыли что-то указать при создании номера на FreePBX и когда менеджеры будут перемещаться между офисами, будет использоваться транк провайдера связи по месту командировки.
Спасибо.