annotate README @ 85:70c3c8ebee33

sip-in: handle MNCC RTP bogons from OsmoMSC
author Mychaela Falconia <falcon@freecalypso.org>
date Tue, 20 Sep 2022 22:47:53 -0800
parents dffcae9bc8a3
children 97317ede320a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
29
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 This Hg repository contains a work-in-progress named Themyscira Wireless system
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 software. Themyscira Wireless (ThemWi) is an experimental GSM network operated
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 by Mother Mychaela of FreeCalypso at a semi-urban/semi-rural location in
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 Southern California, USA; this GSM network is operated with Osmocom CNI software
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 components, all running on a single Slackware Linux server. ThemWi system sw
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 is going to be a suite of daemon processes and command line tools that run on
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 the same machine as all those Osmocom sw components and provide some additional
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 functionality that is not provided "out of the box" by Osmocom, most important
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 of which is outside connectivity to USA PSTN.
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 Right now we have a themwi-mncc daemon process that connects to OsmoMSC via the
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 MNCC socket interface provided by the latter and takes the place of OsmoMSC's
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13 mncc_builtin. themwi-mncc switches local calls (from one GSM subscriber to
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 another) just like mncc_builtin, but it also provides a hook (mtcall_socket)
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 for routing externally originated calls to GSM (which then become MT calls),
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16 and it will later have a similar interface for routing MO calls to the outside
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
17 world. Additional daemon processes that will interface with USA PSTN via SIP
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18 (one process accepting SIP INVITEs from bulkvs.com servers, turning them into
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 MNCC and sending the calls toward GSM, and another process going the other way)
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20 remain to be implemented.
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 We are currently experimenting with using bulkvs.com as our USA PSTN
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 connectivity provider. Like most low-cost PSTN connectivity providers, they
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 provide the interface to PSTN in the form of a SIP trunk - while I would
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 absolutely love to get a traditional TDM trunk instead, with SS7 signaling,
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26 such a toy would be far beyond my budget, hence I have to settle for SIP.
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27 Our current status is:
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 * We have already obtained a block of USA phone numbers (NANP, chosen numbers
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 from an exchange area local to us) from bulkvs.com;
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 * These bulkvs-sourced real NANP numbers have been entered as MSISDNs into
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 OsmoHLR records for our test SIMs operating on ThemWi GSM;
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 * We can successfully dial calls from one ThemWi GSM phone to another, with
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36 themwi-mncc understanding all dialing formats that are considered standard
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37 for cellular phone networks in USA (full international, or 11 digits starting
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 with '1' but no '+', or 10 digits only), as well as our own non-standard
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 shorthand dialing method with only 4 digits;
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 * Whenever someone dials one of our NANP numbers from the outside world, bulkvs
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 servers send UDP SIP INVITE packets to our server, and by dumping them with
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 our sip-udp-dump utility, we can see exactly what we have to work with;
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44
dffcae9bc8a3 add README
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 * The rest remains to be implemented.