piątek, 14 listopada 2014

Połączenia na numery stacjonarne - dialplan pattern matching

Zrobiłem dialplan dla asteriska, który pozwala na połączenia tylko do numerów stacjonarnych w Polsce według rozpiski z http://pl.wikisource.org/wiki/Telefoniczne_numery_kierunkowe_w_Polsce. Dialplan bardzo prosty, aczkolwiek na tyle pracochłonny, że postanowiłem tutaj wrzucić, może komuś się przyda.  Sam dialplan wykorzystuje macro, aby można było w prostszy sposób zmieniać jego konfigurację.

Może ktoś z Was, wie jak napisać taki dialplan zgrabniej? Jeśli tak to proszę zostawić pomysł w komentarzach pod postem ;)

extensions.conf


[macro-stacjonarka]
exten => s,1,NoOp(DZWONIE DO ${ARG1})
exten => s,n,Dial(SIP/trunk_wychodzacy/${ARG1})
exten => s,n,Hangup



[wychodzace]

exten => _1XXXXXXXX,1,NoOP(stacjonarka)
exten => _1XXXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _1XXXXXXXX,n,Hangup()




exten => _2NXXXXXXX,1,NoOP(stacjonarka)
exten => _2NXXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _2NXXXXXXX,n,Hangup()

exten => _3[2-4]XXXXXXX,1,NoOP(stacjonarka)
exten => _3[2-4]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _3[2-4]XXXXXXX,n,Hangup()

exten => _4[1234678]XXXXXXX,1,NoOP(stacjonarka)
exten => _4[1234678]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _4[1234678]XXXXXXX,n,Hangup()

exten => _5[245689]XXXXXXX,1,NoOP(stacjonarka)
exten => _5[235689]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _5[245689]XXXXXXX,n,Hangup()

exten => _6[123578]XXXXXXX,1,NoOP(stacjonarka)
exten => _6[123578]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _6[123578]XXXXXXX,n,Hangup()

exten => _7[14567]XXXXXXX,1,NoOP(stacjonarka)
exten => _7[14567]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _7[14567]XXXXXXX,n,Hangup()

exten => _8[1-79]XXXXXXX,1,NoOP(stacjonarka)
exten => _8[1-79]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _8[1-79]XXXXXXX,n,Hangup()

exten => _9[145]XXXXXXX,1,NoOP(stacjonarka)
exten => _9[145]XXXXXXX,n,Macro(stacjonarka,${EXTEN},1)
exten => _9[145]XXXXXXX,n,Hangup()