comparison doc/Local-short-numbers @ 270:6f28a4377a99

doc/Local-short-numbers: first draft written
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 26 Nov 2023 17:08:10 -0800
parents
children
comparison
equal deleted inserted replaced
269:ff1ed366c84d 270:6f28a4377a99
1 Network-internal short dialing numbers
2 ======================================
3
4 In addition to obviously necessary support for standard E.164 phone numbers
5 (assigning real NANP numbers to local subscribers, calling any other NANP
6 numbers whether they are local or not, calling international numbers outside of
7 NANP), ThemWi system sw implements an additional, entirely private and network-
8 internal, numbering space for 4-digit short dialing numbers. Any time a ThemWi
9 GSM subscriber dials a number that consists of only (exactly) 4 digits, that
10 short number is looked up in this private ThemWi-defined numbering space.
11
12 In the present implementation, three different types of numbers can exist in
13 this private, network-internal short 4-digit number space, each described in
14 its own section below.
15
16 Abbreviated NANP numbers
17 ------------------------
18
19 If you have a bunch of real NANP numbers from the same NPA-NXX prefix, you can
20 enter them into the master database of locally owned numbers (see
21 Number-database article) using this notation:
22
23 prefix NPA-NXX allow-abbrev
24
25 If the 'allow-abbrev' flag keyword is included, each NANP number entered under
26 this prefix (each following suffix line) gets added to the short 4-digit number
27 space: in addition to the standard option of dialing all 10 digits, the same
28 number can be reached by dialing only the last 4 digits, considered to be the
29 "station" part of the number (under a given "exchange") per NANP rules.
30
31 You do need to be careful with this facility, as conflicting numbers are not
32 allowed. Enabling allow-abbrev mode makes sense under the following conditions:
33
34 1) You have one preferred NPA-NXX prefix, presumably corresponding to your
35 geographic locality, and you reserve all of your native numbers (via BulkVS
36 portal or equivalent from other providers) from that one preferred prefix.
37 In this case you should set allow-abbrev on your "home" prefix, but whenever
38 you have to add non-native numbers to your network (customer port-ins etc),
39 those don't get the abbreviated dialing option, only full10.
40
41 2) You may enable allow-abbrev for more than one prefix if you reserve your
42 numbers from multiple prefixes in a judicious manner, selecting 4-digit
43 suffixes that don't overlap across your two (or more) prefixes.
44
45 Internal test numbers (ITNs)
46 ----------------------------
47
48 An ITN is a 4-digit short dialing number (meaningful only inside your local GSM
49 network) that is assigned to a GSM subscriber and entered as such (4 digits
50 only) into OsmoHLR subscriber database. When ITNs are used, a GSM subscriber
51 who gets an ITN is *not* given a real NANP telephone number, and thus cannot
52 make any calls to or receive any calls from the outside world.
53
54 Our own Themyscira Wireless operation does not presently use any ITNs. This
55 facility was invented before we realized how cheap NANP numbers can be when they
56 are ordered "raw" or "bare": a basic reservation of a real 10-digit NANP number
57 from BulkVS *without* E911 provision and without SMS capability (regular,
58 non-emergency calls only) costs only $0.06 (6 cents) per number per month. At
59 this insanely cheap price, it makes no sense to introduce ITNs, it is easier to
60 give a real NANP number to every GSM subscriber including lab-use-only test
61 SIMs - but the Mother does not believe in removing implemented functionality
62 without extremely strong justification, hence support for ITNs remains in our
63 software.
64
65 To define an ITN, enter a line like this into your master database of locally
66 owned numbers:
67
68 itn XXXX
69
70 where XXXX is the 4-digit number to be defined as an ITN.
71
72 Test sink numbers
73 -----------------
74
75 A test sink number is a private, network-internal 4-digit number that is
76 intended to serve as a destination or "sink" for test calls and test SMS. Any
77 calls dialed to a test sink number will be handled by a special process which
78 only exists for that purpose (remains to be implemented), and any SMS sent to a
79 test sink number will be simply written into log-structured storage without any
80 further delivery to anywhere. The purpose of test sink numbers is to exercise
81 outgoing call and outgoing SMS functions of GSM MS without needing a "real"
82 second party to serve as the recipient.
83
84 To define a test sink number, enter a line like this into your master database
85 of locally owned numbers:
86
87 test-sink XXXX
88
89 where XXXX is the 4-digit number to be defined as a test sink.
90
91 Historical perspective
92 ======================
93
94 In the original design of ThemWi system sw, 4-digit short dialing numbers were
95 intended to be ITNs only, forming an internal-only numbering space that is
96 entirely disjoint from public E.164 numbers. Operating on the assumption that
97 external NANP numbers would be expensive, the design model was that every GSM
98 subscriber would have an ITN, and then additionally some subscriber lines (those
99 belonging to human users, rather than lab test SIMs) would be given real
100 external phone numbers in NANP. The fixed 4-digit length for internal short
101 numbers was chosen, contrary to the apparent custom in Osmocom community of
102 using 5-digit numbers for such internal "extensions", because a 5-digit number
103 can be a valid SMS short code in USA, and human users of Themyscira Wireless GSM
104 service need to be able to access these SMS short-code public services just like
105 customers of any other cell carrier in this country.
106
107 Shortly after beginning to implement the initial design described above, we
108 discovered how cheap real NANP numbers actually are, and got a batch of numbers
109 from our choice of NPA-NXX prefix. We were then sitting on a batch of numbers
110 that had the same 6-digit prefix, but different 4-digit suffixes, and that was
111 how we got the idea of abbreviated dialing numbers: instead of completely
112 made-up ITNs, allow "home block" NANP numbers to be dialed (from one local GSM
113 phone to another) by just the last 4 digits of the external, globally valid
114 E.164 number.
115
116 Test sink numbers are our latest-so-far addition to the network-internal 4-digit
117 dialing number space, and we have yet to implement them beyond mere definition
118 in the local number database.