Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Как упростить dialplan?

Как упростить dialplan?

Сообщений: 38

Как упростить dialplan?

Можно как-нибудь упростить или сделать в общем виде?
2006-10-29 00:26

Сообщений: 38

Re: Как упростить dialplan?

[msk]
exten => _ZXXXXXX,1,Set(CALLFILENAME=${TIMESTAMP}-out-7495${EXTEN})
exten => _ZXXXXXX,n,MixMonitor(${CALLFILENAME}.wav)
exten => _ZXXXXXX,n,Dial(SIP/sipnet/7495${EXTEN},60,tTm)

exten => _7495ZXXXXXX,1,Set(CALLFILENAME=${TIMESTAMP}-out-${EXTEN})
exten => _7495ZXXXXXX,n,MixMonitor(${CALLFILENAME}.wav)
exten => _7495ZXXXXXX,n,Dial(SIP/sipnet/${EXTEN},60,tT)

exten => _7499ZXXXXXX,1,Set(CALLFILENAME=${TIMESTAMP}-out-${EXTEN})
exten => _7499ZXXXXXX,n,MixMonitor(${CALLFILENAME}.wav)
exten => _7499ZXXXXXX,n,Dial(SIP/sipnet/${EXTEN},60,tT)

[spb]
exten => _7812XXXXXXX,1,Set(CALLFILENAME=${TIMESTAMP}-out-${EXTEN})
exten => _7812XXXXXXX,n,MixMonitor(${CALLFILENAME}.wav)
exten => _7812XXXXXXX,n,Dial(SIP/sipnet/${EXTEN},60,tT)

[russia]
exten => _7XXXXXXXX.,1,Set(CALLFILENAME=${TIMESTAMP}-out-${EXTEN})
exten => _7XXXXXXXX.,n,MixMonitor(${CALLFILENAME}.wav)
exten => _7XXXXXXXX.,n,Dial(SIP/freecall/${EXTEN},60,tT)

[internal]
include => msk
include => spb
include => russia
2006-10-29 00:27

Сообщений: 112

Re: Как упростить dialplan?

[macro-dialmonitor]
exten => s,1,Set(CALLFILENAME=${TIMESTAMP}-out-${ARG2})
exten => s,n,MixMonitor(${CALLFILENAME}.wav)
exten => s,n,Dial(${ARG1}/${ARG2},60,tT)

[msk]
exten => _ZXXXXXX,1,Macro(dialmonitor,SIP/sipnet,7495${EXTEN})
exten => _7495ZXXXXXX,1,Macro(dialmonitor,SIP/sipnet,${EXTEN})
exten => _7499ZXXXXXX,1,Macro(dialmonitor,SIP/sipnet,${EXTEN})

[spb]
exten => _7812XXXXXXX,1,Macro(dialmonitor,SIP/sipnet,${EXTEN})

[russia]
exten => _7XXXXXXXX.,1,Macro(dialmonitor,SIP/freecall,${EXTEN})

[internal]
include => msk
include => spb
include => russia
2006-10-29 01:09

Сообщений: 38

Re: Как упростить dialplan?

ОГРОМНОЕ СПАСИБО!

А как бы еще запретить мобильные? Создать контекст

[nomobile]
exten => _79XXXXXXXXX,1,Hangup

[internal]
include => nomobile

не помогает. все-равно звонок идет через контекст russia
2006-10-29 15:43

Сообщений: 112

Re: Как упростить dialplan?

drewexten => _7[901-929]XXXXXXX,1,Hangup
под этим что имеется ввиду?
все номера от 7901 до 7929 ?
тогда эта маска не верная
приближенная к этой:
_79[0-2][0-9]XXXXXXX
приближенная, потому что в нее еще попадет номер 7900
2006-10-29 16:56

Сообщений: 38

Re: Как упростить dialplan?

я сделал вот так:

[nomobile]
exten => _79XXXXXXXXX,1,Hangup

[internal]
include => nomobile
include => russia

все работает, т.е. звонки на обильные блокируются.
а если поменять местами include в [internal], то мобильные проходят.
получается срабатывает не most matched, а очередность контекстов. так и должно быть?
2006-10-29 17:29

Откуда: Киев
Сообщений: 749

Re: Как упростить dialplan?

да в астериске срабатывает первый по порядку влюченный контекст.
более того, если 2 правила в контексте подходят - сработает первое(но это - негарантировано, при выборе с базы может сработать и второе)
если прописано так
[c1]
exten => _122X.,1,noop
[c2]
include => c1
exten => _1X.,1,noop

сработает правило в с2, т.е сначало срабатывают "родные" правила а потом включенные в порядке включения.

2006-10-30 00:55

Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru