Как настроить объединение внутренних номерных планов Webitel и Asterisk
Документ описывает способ объединения локального asterisk сервера (13 версии) с облаком webitel. В указанном примере внутренние номера пользователей на стороне webitel начинаются на 33 и имеют длину в 4 символа. Все остальные 4-х значные номера находятся на стороне asterisk:
Реализация
Реализация объединения двух внутренних номерных планов asterisk и webitel:
Создаем SIP регистрацию для сервера Webitel:
sip.conf
[webitel] type=friend host=dynamic port=5080 username=webitel secret=webitel-secret-pss disallow=all allow=alaw allow=ulaw insecure=invite,port canreinvite=no trustrpid=yes sendrpid=yes context=from-webitel
Разрешаем со стороны Webitel звонить на любой внутренний номер asterisk:
extensions.conf
[from-webitel] exten => _X.,1,Dial(SIP/${EXTEN}) exten => _X.,n,Hangup
Что бы избежать возможное пересечение внутренних номеров на облачной площадке webitel, все звонки направляем на выделенный в public номер, к примерк 100100, а в заголовке SIP пакета передаем номер, с которым необходимо будет соединить.
Создаем правило для звонков на внутренние номер webitel, которые начинаются на 33 и содержат 4 знака:extensions.conf
exten => _33XX,1,SIPAddHeader(X-Webitel-To:${EXTEN}) exten => _33XX,2,Dial(SIP/webitel/100100) exten => _33XX,n,Hangup
Применяем настройке на сервере asterisk и создаем в webitel шлюз:
Создаем в default схему для исходящей маршрутизации. Все 4-х значные короткие номера отправляем на сторону сервера asterisk:
Number: ^(\d{4})$default callflow
Создаем в public схему для входящей маршрутизации. Все звонки на номер 100100 будут проверяться на наличие заголовке SIP пакетах и переводиться на внутренний номер в webitel.
Number: 100100public callflow
Проверяем звонки.
Это один из примеров реализации объединения номерных планов для облачного Webitel. В схеме on-site возможны и другие способы без использования SIP заголовков.
Related articles