Asterisk - podmínka pro čísla mimo ČR

help

Asterisk - podmínka pro čísla mimo ČR
« kdy: 15. 06. 2015, 09:17:47 »
Ahoj, jak zapsat v dialplanu Asterisku podmínku na všechna čísla mimo ČR, tedy mimo těch začínajících na 00420. Tedy, bude-li číslo z ČR, tak skoč sem a bude-li mimo ČR, tak skoč tam.

Díky


Iany

Re:Asterisk - podmínka pro čísla mimo ČR
« Odpověď #1 kdy: 15. 06. 2015, 09:51:45 »
Jen tak z hlavy, takže neručím za přesnou syntaxi příkazů ap.

Nejdřív musíš číslo znormalizovat, aby bylo v jednotném formátu - to předpokládám, že máš a volané číslo přijde v mezinárodním formátu buď s 00, nebo s +.
Pak bych chytil národní hovory, protože jich bývá většina. A pak mezinárodní. A pak zahodil, co si pošlu do tohohle kontextu vlastní chybou.

[nationalorinternational]
exten => _00420ZZZ!,1,Goto(national)
exten => _+420ZZZ!,1,Goto(national)
exten => _00.,1,Goto(international)
exten => _+.,1,Goto(international)
exten => _.,1,Goto(reject)

Iany

Re:Asterisk - podmínka pro čísla mimo ČR
« Odpověď #2 kdy: 15. 06. 2015, 10:07:42 »
Sorry, míchám tam ověřování formátu čísla s forkováním podle typu čísla. Takže znovu a lépe, jen forking. Ověření formátu s dalším forkováním podle typu čísla by následovalo. A nakonec routování.

[nationalorinternational]
exten => _00420.,1,Goto(national)
exten => _+420.,1,Goto(national)
exten => _00.,1,Goto(international)
exten => _+.,1,Goto(international)
exten => _.,1,Goto(reject)

[national]
exten => _112,1,Goto(emergency)
exten => _15X,1,Goto(emergency)
exten => _1XX.,1,Goto(services)
exten => _[2-5]XXXXXXXX,1,Goto(geographic)
exten => _[6-7]XXXXXXXX,1,Goto(mobiles)
atd.

Sten

Re:Asterisk - podmínka pro čísla mimo ČR
« Odpověď #3 kdy: 15. 06. 2015, 13:32:59 »
Sorry, míchám tam ověřování formátu čísla s forkováním podle typu čísla. Takže znovu a lépe, jen forking. Ověření formátu s dalším forkováním podle typu čísla by následovalo. A nakonec routování.

[nationalorinternational]
exten => _00420.,1,Goto(national)
exten => _+420.,1,Goto(national)
exten => _00.,1,Goto(international)
exten => _+.,1,Goto(international)
exten => _.,1,Goto(reject)

[national]
exten => _112,1,Goto(emergency)
exten => _15X,1,Goto(emergency)
exten => _1XX.,1,Goto(services)
exten => _[2-5]XXXXXXXX,1,Goto(geographic)
exten => _[6-7]XXXXXXXX,1,Goto(mobiles)
atd.

Pozor na to, že 112 a 15x by mělo fungovat bez mezinárodní předvolby, tady se ale zamítne. Vhodnější může být čísla, která nezačínají + nebo 00, pokládat za národní.

Iany

Re:Asterisk - podmínka pro čísla mimo ČR
« Odpověď #4 kdy: 16. 06. 2015, 21:43:49 »
Emergency nezahazuji. V prvním příspěvku jsem psal o normalizaci čísla, tzn. pokud přijde bez mezinárodního prefixu, tak ho přidám a do "nationalorinternational" kontextu mi pak tím pádem nepřijde 112, ale +420112. Což projde.

Chyba je, že v tom "national" kontextu nemám nikde ten mezinárodní prefix. Ale nikde... Takže tam už bych naroutoval leda velkej prd.