Доброго дня! Прошу помощи в решении проблемы по проверке CLID c транка. Имеется транк и требуется осуществить проверку входящих CLID, чтобы клиент слал только 10-значные номера со своей сети (то есть закрывал внутренню свою нумерацию уже городским номеров). Делаю проверку таким образом:
exten => _X./4991111111,1,NoOp(Right CLID)
exten => _X./4991111112,1,Goto(out,${EXTEN},1)
exten => _X.,1,Hangup()
Но данная конструкция не работает, с транка летят номера клиента на PBX. Делал так
exten => _X.,1,Hangup()
exten => _X./4991111111,1,NoOp(Right CLID)
exten => _X./4991111112,1,Goto(out,${EXTEN},1)
Все равно не работает. Требуется сделать проверку на RDNIS и CLID. Чтобы со стороны транка не приходили клиентские внутренние номера. Прошу помощи. Asterisk 11
same => n,Set(CALLERID(rdnis)=${CALLERID(num)}); ну или наоборот.
Задан: 2016-12-07 10:28:52 +0400
Просмотрен: 311 раз
Обновлен: Dec 07 '16
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
С танка так и будет лететь внутренние номера. Потому что на той стороне не настроено
awsswa ( 2016-12-07 11:05:57 +0400 )редактироватьТо есть принять вызов и выполнить
zzuz ( 2016-12-07 11:06:29 +0400 )редактироватьNoop(CLID:${CALLERID(num)})
религия не позволяет ?Конструкция работает. Подмена происходит потому что клиент шлет трехзначный RDNIS. Как сделать проверку еще и по RDNIS?
MaximKAA ( 2016-12-07 11:19:44 +0400 )редактироватьКак как .
zzuz ( 2016-12-07 11:48:10 +0400 )редактироватьexecif($["${CALLERID(rdnis)}" = "123"]?Noop)