Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

История изменений [назад]

нажмите, чтобы скрыть/показать версии 1
изначальная версия
редактировать

спросил 2016-07-14 08:21:24 +0400

pritorius Gravatar pritorius flag of Russian Federation

Asterisk 11.7.0 REGEX CALLERID

exten => _X!,1,NoOp("${CALLERID(num)}")
exten => _X!,n,ExecIf($[${REGEX("2400([67][0-9]|5[2-9]|8[01])", "${CALLERID(num)}")}]?NoOp(NORMA):Set(CALLERID(num)=240999))
exten => _X!,n,Goto(from-trunk,${EXTEN},1)

Есть такой контекст для транка. Он проверяет чтобы шаловливый админ второго астера отдавал "праведный" CALLERID, если приходит CALLERID не разрешённый для этого трафнка, подставляется пилотный номер. Всё работает, но если добавить в регулярку символы начала ^ и конца строки $ условие, для исключения 000240060 и т.д. всегда возвращает 0 (False).

Первой строчкой проверяю что прилетает в CALLERID там 6 цифр, номер без пробелов и переносов... Что за магия?

Asterisk 11.7.0 REGEX CALLERID

exten => _X!,1,NoOp("${CALLERID(num)}")
exten => _X!,n,ExecIf($[${REGEX("2400([67][0-9]|5[2-9]|8[01])", "${CALLERID(num)}")}]?NoOp(NORMA):Set(CALLERID(num)=240999))
exten => _X!,n,Goto(from-trunk,${EXTEN},1)

Есть такой контекст для транка. Он проверяет чтобы шаловливый админ второго астера отдавал "праведный" CALLERID, если приходит CALLERID не разрешённый для этого трафнка, подставляется пилотный номер. Всё работает, но если добавить в регулярку символы начала ^ и конца строки $ условие, для исключения 000240060 и т.д. всегда возвращает 0 (False).

Первой строчкой проверяю что прилетает в CALLERID там 6 цифр, номер без пробелов и переносов... Что за магия?

Asterisk 11.7.0 REGEX CALLERID

exten => _X!,1,NoOp("${CALLERID(num)}")
exten => _X!,n,ExecIf($[${REGEX("2400([67][0-9]|5[2-9]|8[01])", "${CALLERID(num)}")}]?NoOp(NORMA):Set(CALLERID(num)=240999))
exten => _X!,n,Goto(from-trunk,${EXTEN},1)

Есть такой контекст для транка. Он проверяет чтобы шаловливый админ второго астера отдавал "праведный" CALLERID, если приходит CALLERID не разрешённый для этого трафнка, подставляется пилотный номер. Всё работает, но если добавить в регулярку символы начала ^ и конца строки $ условие, для исключения 000240060 и т.д. всегда возвращает 0 (False).

Первой строчкой проверяю что прилетает в CALLERID там 6 цифр, номер без пробелов и переносов... Что за магия?

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.