Offline internet in refugee camp1
This is a preliminary specification of fuctionality for Daedalus SimSim Box2 (SSB) – local internet nodes, providing access to rudimentary services in the areas (camps) with weak or non-existing internet uplinks.
After some research and comparison, I temporarily selected PirateBox (PB)3 as the most suitable software platform for deployment and future development of new services. Also, as we need to keep it open for expansion, I suggest RaspberryPi4 (or open equivalent) family as our default hardware.
Starting from these premises, here is the 3-tier functionality specification. Please kindly contribute, using section numbers for reference.
Entry level functions
These functions are already provided by the PB and only need to be modified to our needs:
Responsive design for ease of use with phones and tablets;
UPnP Media Server for local streaming of movies and songs;
Image and Message Board for 4chan-like functionality;
Chat room for anonymous communications;
Browser-based file sharing system!
And here’s a list of needed adaptations:
Splash page / WiFi login prompt
Our users will most probably use their smartphones (over wifi) to access the network. They will know nothing about using local networks – they are just users. So we need to provide them with some guidance.
Two things a user has to know are: where to go after logging in and how to choose preferred language5. If we are able to redirect their browser to a designated address, we have first issue covered and then the server will take care of the rest. It may also double as a landing „switchboard” page, which we’ll need as we add more services to the system.
Otherwise we need to send a user brief information, telling them what address they should enter after logging in → pointing to the server’s homepage.
In many places we will be working under detailed surveillance of the authorities. Especially in Greece they are rather twitchy and trigger-happy if it comes to any sign of counter-culture or subversive approach. It would be counterproductive to deploy system openly referring to counterculture and pirate radio symbolics. So we need to rebrand the software, making it look „humanitarian and apolitical”. Using Daedalus’ visual representation and „SimSim Box” name should look good enough for that.
Interface language switch
As I mentioned before, we also need wide selection of language interface versions. Translation-friendly PB is expected in v. 1.1 – I am waiting for the information about launch date. Meanwhile, we will have to live with English language only. I believe we can provide user guides in various languages, if the 1.1. launch takes long time.
Basic level functions
Our goal is to provide platform for in-camp communication, education and entertainment. The core functionality will be an „Internet Classroom” used (mostly) via wifi-connected smartphones and other mobile devices. For this level of operations we need a bit of more developed services. The assumption or this level is that SSB has no connection to the internet.
„Drive-in” sync, backup and upgrade
The assumption is that there is no uplink to the internet, so the only way to synchronise, backup and upgrade systems is by visiting the place. We will not always have qualified IT people available to do it, so we need some automated way to do it. The idea is that another computer (possibly headless and unmanned unit) should periodically pop up in the network, log into the SSB and perform whatever maintenance would be needed. All safety and privacy standards apply, of course.
Offline wikipedia and other resources
Apart from „regular” file sharing, first resources we want to make available will be the content of Wikipedia. Currently I assume that we’d use Kiwix6 tools, having the content stored as ZIM files and available through separate lightweight reader app. As soon as we have SSB deployed, we shall start talking to other providers7 to have their content available as well.
First dynamic content provider we can use – still without necessity of live uplink – is Outernet8. They provide satellite-based broadcast of cultural and education content. To get it, we only need a satellite receiver and antenna, which can be connected to SSB, as another service.
Advanced level functions
As we expand and hopefully gain better leverage, we will possibly be able to get some internet access. Realistically, no consumer-grade can stand concurrent sessions of, say, 500 smartphones, so we still will need to filter and optimize traffic.
At that level we will also use SSB as a communication medium, both within camps and across the world.
Profiles: private and hidden content
We will introduce user profiles. It will make possible to have private chats and messageboard threads (visible or hidden). This will build basic messaging system.
In bigger camps we will need more then one SSB. Using their uplink wifi interfaces we will be able to provide interconnectivity, so the whole content will be available on every node. Exact way to have it done is yet to be determined.
Online sync, backup and upgrade
We will introduce mechanisms for automated maintenance of SSB from remote server. „Drive-in” functionality will stay there as a failsafe.
We will run server-based news reader, providing more information to the users.
RSS streaming (aggregated)
Public, user-generated content will be streamed through RSS and aggregated on the server at Daedalus HQ9. Both aggregated and per camp streams will be available through the news reader mentioned above.
Torrent client-server (local torrent library)
We will build a shared library of torrents. Using torrent client (web-accessible) we will enable users to „order” items via low-speed torrent channel. Both web browsers and mobile torrent clients will be available for this purpose.
Mesh network access
To increase local coverage, we will also test and possibly deploy mesh access network. This feature, however, depends on the mesh technology development10.
1 And wherever it may be needed.
2 Arabic word for Sesame (like in „Open, Sesame!”)
4 https://www.raspberrypi.org/products/ – popular, relatively cheap, strong enough to run PirateBox in various configurations. Universal enough for future repurposing. Similarly to software platform, hardware selection will also be reviewed before large-scale deployment.
5 We shall need as many languages as possible from the following list: English, French, German, Spanish, Portuguese, Arabic, Turkish, Farsi, Kurdish (Kurmanji & Sorani), Pashtu, Dari or Greek.
7 Project Gutenberg, Open Culture etc.
9 As soon as the connectivity allows, we will also make individual (camp) RSS streams publicly available, keeping official list at every SSB for reference.
10 https://duckduckgo.com/?q=mesh+site%3Adaviddarts.com%2Cpiratebox.cc%2Cpiratebox.aod-rpg.de%2Cpiratebox.de&ka=h&kt=Helvetica&ky=%23fafafa&kj=%23222222&kx=b&k7=%23fafafa&ia=web# There is also independent mesh network project: https://commotionwireless.net