AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

выход на разные транки по маске внутренних номеров средствами freePBX?

Newbies/FAQ Forum 6 сообщений 24.08.2011 09:57 - 26.08.2011 13:44
#1 24.08.2011 09:57

честно роюсь на форуме уже 2 часа, так и не понял как это можно сделать средствами FreePBX.
задача: есть Extensions с масками
1XX, 2XX - питер
3XX, 4XX - москва
нужно чтобы по маске набираемого номера NXXXXXX питер пользовался одним транком, москва другим,
межгород - транк один, но авторизация разная (для простоты сделал 2 транка)

я так понял нужно рыть в сторону Custom Contexts, но так и не понял как его применить к моей задаче.
подскажите есть ли где описания с примерами, ну или хотябы по каким словам осуществлять поиск

Added after 35 minutes:

продублировал все Outbound Routes на разные транки,
сделал Context для каждой группы,
а как привязать этот Context к конкретному Extension? а еще лучше заставить его работать по маске типа 1XX, 2XX?
#2 24.08.2011 10:26

Вот такого типа запись:
exten => _NXXXX/_1XXX, 1, dial...
#4 24.08.2011 11:24

alexgb wrote:
Вот такого типа запись:
exten => _NXXXX/_1XXX, 1, dial...

это я понял побродив по просторам форума, но очень хочется средствами FreePBX
zlat wrote:
http://asterisk-support.ru/question/902/elastix-iskhodiashchaia-marshrutizatsiia
пункт 1 и 2

а вот это действительно помогло:
в freepbx с 2.8 добавлена возможность указывать с каких callerid возможны звонки на тот или иной маршрут.
сделал как на картинке и даже с шаблоном работает
жалко только что так и не понял как здесь можно применить Custom Contexts

не очень удобно то, что для 4-х групп, мне придется каждое правило повторить 4 раза и их станет штук 30, а скоро воткну GSM гейт, так подозреваю их будет как минимум еще вдвое больше, не начнутся ли проблемы?
#5 26.08.2011 11:57

после каждого изменения маршрутизации, транка или чего еще, freepbx генерит разные диалпланы или макросы.
Вот к примеру если вы создадите новый входящий маршрут то в файле extensions_additional.conf будет создан диалплан с названием типа: ext-did-0002
И первой строкой этого диалплана будет:

[ext-did-0002]
include => ext-did-0002-custom
exten => 200,1,Set(__FROM_DID=${EXTEN})

если вы создадите в файле extensions_custom.conf диалплан с названием ext-did-0002-custom, он он отработает перед тем который сгенерил freepbx. В конце своего диалплана в принципе можно прервать соединение и не передавать сгенеренному автоматом плану управление.

Есть модуль Custom Context, который типа дает возможность писать диалпланы в гуе. Но нафига это надо ,я пока не понял, писанины не меньше, а вот нарваться на какую-нибудь глупую ошибку автомата легко.
так что customs вам в руки и вперед Smile
#6 26.08.2011 13:44

самый простой вариант, на мой вгляд, это создать несколько маршрутов, завязанных на разные транки. На первый транк (маршрут) запусить вызовы на одно направление, на второй - на другое. Это первое, что мне пришло в голову, когда начал разбираться со *+FreePBX. И это - работает.
А дальше, смотрим в сторону Custom Context. Создаем кучу кастомных контекстов ( по потребности). В них распихиваем наших пользователей в зависимости от тех или иных критериев (например, отдел, где работает). Создаём (вот тут неудобство есть) набор исходящих маршрутов под эти кастомные контексты (то есть одним юзерям можно будет ходить по одним маршрутам, другим - туда же - по другим). Ну и потом - связываем это воедино в настройках того или иного кастомного контекста..