Project

General

Profile

DIVF Dialplan » History » Version 12

laforge, 12/02/2023 09:58 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 11 laforge
* Convert the Calling Number to _national_ format, if it is _unknown_ (@caller_to_national@)
10 1 laforge
** 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 11 laforge
* convert Called Number to _national_ or _international_ format, as neded (@convert_called@)
14
** 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
*** if it starts with 0049, strip that and change type to _national_
18
*** if it starts with 00, strip that and change type to _international_
19
*** if it starts with 0, strip that and change type to _national_
20 12 laforge
* if Called Number is _network specific_, convert type to _international_
21
** this is for incoming calls from @cquirin who uses  _network specific_ for C*NET (and national/international only for the real PSTN) 
22 11 laforge
* route _international_ calls to international destinations (@intl_outbound@)
23
** convert Calling Number from _national_ to _international_ (@caller_to_intl@)
24
* route _national_ calls to national destinations (@natl_outbound@)
25
** block/drop calls to any prefixes reserved in German national diaplan (like 500/501, 701, 801, 90[1-5], ...)
26 1 laforge
** route anything to area code 30 to @berlin@
27
** route anything to area code 4644 to the EWSD of @jolly (via national ISUP/SS7 via TDMoIP)
28
* prefix-match to direct international interconnects
29
** 4205 gets routed to jpesak EWSD (via international ISUP/SS7 over TDMoIP)
30
** anything else gets routed via enumroute to "C-NET / CKTS":https://www.ckts.info/
31 2 laforge
32 6 laforge
h2. Incoming calls from C*NET/CKTS via IAX (@cnet_incoming)
33
34
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.
35
36
* if the Called Party starts with 49 (irrespective of type), route via @natl_outbound@ on the remainder
37
* reject anything else, also avoid falling-back to enumroute so we don't create loop routes from C*NET to C*NET.
38
39 3 laforge
40 4 laforge
h2. Incoming calls via international ISUP/SS7 links (@ss7_incoming_intl@)
41
42
* reject any incoming calls that do not have an _international_ Calling Party 
43
* reject any incoming calls that do not h ave an _international_ Called Party
44
* if it starts with 49 and includes the "complete" digit (F), strip the 49 prefix and route via @natl_outbound@ (see above)
45
46 5 laforge
h2. Incoming calls via national ISUP/SS7 links (@ss7_incoming_natl@)
47 1 laforge
48 5 laforge
* route calls to _international_ Called Party via @intl_outbound@ (see above)
49 10 laforge
* route calls to _national_ Called Party that end in a signalling complete digit (F) via @natl_outbound@ (see above)
Add picture from clipboard (Maximum size: 48.8 MB)