Страница 1 из 1

dialplan, ограничение доступа

Добавлено: 02 мар 2012, 23:16
CheGev
Имеется астериск, к нему подключен через Е1 атс панас, помимо этого еще имеется канал IAX2 и около 30 sip клиентов.
Ситуация токава: необходимо например номеру 200,122,121 и т.д. из атс е1, sipу 821,822 запретить выход на межгород.
Сейчас сделал вот таким образом:

Код: Выделить всё

exten => _8XXXXXXXXXX,1,NoOp(Номер ${CALLERID(num)})
exten => _8XXXXXXXXXX,n,GotoIf($["${CALLERID(num)}" = "822"]?denied)
exten => _8XXXXXXXXXX,n,GotoIf($["${CALLERID(num)}" = "823"]?denied:opt)
exten => _8XXXXXXXXXX,n(denied),Background(denied)
exten => _8XXXXXXXXXX,n,HangUp
exten => _8XXXXXXXXXX,n,HangUp
exten => _8XXXXXXXXXX,n(opt),Dial(SIP/canalSip/${EXTEN},120,tTL(1800000:300000:100000))
exten => _8XXXXXXXXXX,n,HangUp
Считаю такой способ не очень хорош, когда имеется большое кол-во ограниченный абонентов(а у меня такое скоро предвидется). Ограничевать по контексту тоже не получится, т.к. абоненты, как я выше написал подключаются по разным протоколам.Подскажите, каким образом можно еще организовать данную схему?

Re: dialplan, ограничение доступа

Добавлено: 03 мар 2012, 00:02
ded
Не надо GotoIf
Используйте запрет по шаблонам
exten => _8XXXXXXXXXX/_12X,1,Playback(no-way)
exten => _8XXXXXXXXXX/_12X,n,Hangup()
или прямой
exten => _8XXXXXXXXXX/200,1,Playback(no-way)
exten => _8XXXXXXXXXX/200,n,Hangup()

Re: dialplan, ограничение доступа

Добавлено: 03 мар 2012, 23:22
CheGev
Спасибо.