VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

execif сразу несколько аргументов

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

Модераторы: april22, Zavr2008

Ответить
musho5755
Сообщения: 37
Зарегистрирован: 07 ноя 2015, 16:41

execif сразу несколько аргументов

Сообщение musho5755 »

Подскажите пожалуйста, возможно ли использовать сразу несколько аргументов для команды ExecIf? На пример вместо этого

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

exten => 265,n,ExecIf($[${CALLERID(number)} = 469734]?Goto(getname,s,19))

написать типа такое

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

exten => 265,n,ExecIf($[${CALLERID(number)} = 469734,66568,548222,444583,545687]?Goto(getname,s,19))

В документации написано только для одного аргумента.
ded
Сообщения: 15625
Зарегистрирован: 26 авг 2010, 19:00

Re: execif сразу несколько аргументов

Сообщение ded »

Вычисление условия ExecIf - это логическая операция, результатом которого буде 0 или 1.
То есть можно использовать операнд XOR - | (логическое или), типа
ExecIf($[${CALLERID(number)} = 469734] | ${CALLERID(number)} = 66568] | ${CALLERID(number)} = 548222
fecyt
Сообщения: 148
Зарегистрирован: 17 янв 2017, 17:51

Re: execif сразу несколько аргументов

Сообщение fecyt »

Можно попробовать сохранить значения в переменную и воспользоваться функцией ARRAY, попробуйте, почитайте.
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: execif сразу несколько аргументов

Сообщение zzuz »

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

exten => 265,n,ExecIf($[${REGEX("^(469734|66568|548222|444583|545687)" ${CALLERID(number)})}]?Goto(getname,s,19))
Линия24 - Системы Массового Телефонного Обслуживания
musho5755
Сообщения: 37
Зарегистрирован: 07 ноя 2015, 16:41

Re: execif сразу несколько аргументов

Сообщение musho5755 »

Спасибо, заработало
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH