# HG changeset patch # User Mychaela Falconia # Date 1702446797 0 # Node ID 1ebc312f4b69a4a6def637fda1f182b26a4526da # Parent 3d6cfb615d90000b2b6125c80a354fdbaebb21f0 add README diff -r 3d6cfb615d90 -r 1ebc312f4b69 README --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README Wed Dec 13 05:53:17 2023 +0000 @@ -0,0 +1,30 @@ +Themyscira Wireless system software (server-side software, add-ons to Osmocom +CNI suite) is being split into two principal domains: + +themwi-csw will be the suite for circuit-switched calls (initially just voice, +but later CSD too), mostly unchanged from OsmoDevCall 2023-09-20 presentation; + +themwi-smsc will be the SMSC for Themyscira Wireless, connecting to Osmocom GSM +network via GSUP and to the outside world via SMPP. + +The one piece which is common between these two domains is the database of +locally owned phone numbers per North American Numbering Plan (NANP): whether +the task at hand is routing a call or routing SMS, either way we need to be able +to look at a phone number and immediately tell (without querying another server +or process) if that number belongs in the local fiefdom or in the outside world. +Because the set of NANP telephone numbers which belong in the local fiefdom is +the same across different service types, the number database is shared between +the two domains - and the easiest way to share this database is to factor out +and share the code that implements it. + +The present themwi-nanp package implements the number database part of ThemWi +and nothing else. It provides administration utilities, as well as libraries +and header files that will be used by both themwi-csw and themwi-smsc; the +present package needs to be compiled and installed before the other two. + +In a departure from other Falconian software, some work has been done to +harmonize the dialect of C language with that used by Osmocom. The present +suite of software (themwi-*) is unusual in that it has no function by itself, +its only function is to serve as an add-on to Osmocom CNI suite - hence it is +desirable to have as much harmonization as possible between the base and the +add-on.