DIVF Dialplan » History » Version 9
laforge, 12/02/2023 09:48 AM
1 | 1 | laforge | h1. DIVF Dialplan |
---|---|---|---|
2 | |||
3 | Our main yate switch (@divf.retronetworking.org) has (as of December 1st, 2023) the following philosophy of processing called/calling party numbers: |
||
4 | |||
5 | h2. Incoming calls from ISDN (Q.931) attached subscribers/PBXs |
||
6 | |||
7 | h3. PBXs within the +49-30 (or any other German area code prefix |
||
8 | |||
9 | * Convert the Calling Number to national format, if it is "unknown" (@caller_to_national@) |
||
10 | ** this means something like 03012342111/unknown/isdn or 03012342111/unknown/unknown gets translated to 3012342111/national/isdn |
||
11 | * collect all the overlapped digits |
||
12 | * directly route calls of any type to old 4-digit short-hand codes for backwards compatibility (i.e. 2yyy, 3yyy, 4yyy, 9yyy, 9yyyy) |
||
13 | 9 | laforge | * convert Called Number to national or international format, as neded (@convert_called@) |
14 | 1 | laforge | ** if Called Number is national format, keep it |
15 | ** if Called Number is international format, keep it |
||
16 | ** if Called Number is unknown, translate as follows |
||
17 | 8 | laforge | *** if it starts with 0049, strip that and change type to national |
18 | 7 | laforge | *** if it starts with 00, strip that and change type to international |
19 | 1 | laforge | *** if it starts with 0, strip that and change type to national |
20 | * route international calls to international destinations (@intl_outbound@) |
||
21 | ** convert Calling Number from national to international (@caller_to_intl@) |
||
22 | * route national calls to national destinations (@natl_outbound@) |
||
23 | ** block/drop calls to any prefixes resrved in German national diaplan (like 500/501, 701, 801, 90[1-5], ...) |
||
24 | ** route anything to area code 30 to @berlin@ |
||
25 | ** route anything to area code 4644 to the EWSD of @jolly (via national ISUP/SS7 via TDMoIP) |
||
26 | * prefix-match to direct international interconnects |
||
27 | ** 4205 gets routed to jpesak EWSD (via international ISUP/SS7 over TDMoIP) |
||
28 | ** anything else gets routed via enumroute to "C-NET / CKTS":https://www.ckts.info/ |
||
29 | 2 | laforge | |
30 | 6 | laforge | h2. Incoming calls from C*NET/CKTS via IAX (@cnet_incoming) |
31 | |||
32 | In C*NET, all calls routed via their enum / IAX2 are using international digits like 493012342111. I'm not sure on what guarantees we can make about the _type_, though. |
||
33 | |||
34 | * if the Called Party starts with 49 (irrespective of type), route via @natl_outbound@ on the remainder |
||
35 | * reject anything else, also avoid falling-back to enumroute so we don't create loop routes from C*NET to C*NET. |
||
36 | |||
37 | 3 | laforge | |
38 | 4 | laforge | h2. Incoming calls via international ISUP/SS7 links (@ss7_incoming_intl@) |
39 | |||
40 | * reject any incoming calls that do not have an _international_ Calling Party |
||
41 | * reject any incoming calls that do not h ave an _international_ Called Party |
||
42 | * if it starts with 49 and includes the "complete" digit (F), strip the 49 prefix and route via @natl_outbound@ (see above) |
||
43 | |||
44 | 5 | laforge | h2. Incoming calls via national ISUP/SS7 links (@ss7_incoming_natl@) |
45 | 1 | laforge | |
46 | 5 | laforge | * route calls to _international_ Called Party via @intl_outbound@ (see above) |
47 | * route calls to _nationala_ Called Party that end in a signalling complete digit (F) via @natl_outbound@ (see above) |