top | item 39604423

(no title)

palmscenter | 2 years ago

The main problem with these projects - which was not much of an issue when the projects started - is that mobile phones of today seek access to web servers at vendors, including the OS source and possibly others such as the phone manufacturer and ISP. The phones balk if they don't connect to those servers. PirateBox and LibraryBox are not just captive portals to Internet connections, they are local content and app servers and don't need the Internet.

So when you connect to a Box via Wi-Fi your phone demands to connect to Internet hosts even though this is unnecessary for this use case. This behavior is confusing to the user. Some early solutions involved trying to spoof Apple servers for example, but the names and IPs of these servers kept changing and this kluge became ineffective.

The only solution I am aware of is to pre-inform users of a local IP address to browse to once their Wi-Fi is connected to the Box. But depending on the occasion and venue, getting such instructions to the audience and having them follow it, can be its own problem.

discuss

order

butterbox|2 years ago

You can setup DNS on the box to redirect users and to give a friendly name to your box. That's what we do for butter box (https://likebutter.app/box/). To make it a step easier, we provide a QR code. But even that is a little clumsy since you must first connect to WiFi, then scan the code.

Captive portals sound nice until you find out how limited they are -- a lot of styling, JS and browser features are simply unavailable. So, you need to tell users "Close this, then go open this site in your real browser"...

Of course, you can't and probably don't want to redirect HTTPS traffic since you don't have the matching cert for e.g. https://google.com

ramses0|2 years ago

SSID: LibraryBox@http-10.20.30.40

I actually have a "MonsterOTG" portable WAP. https://www.youtube.com/watch?v=THnT-rWFnE8 ...their pitch was "put your kids movies on an SD card and they can navigate to them from their iPad (on a road-trip)"... or have all the media on one SD-card and not have to have them on all your phones (like a proto-NAS, kindof).

I used it actually while on a trip to "fake" being a web-server. eg: `scp index.html 10.1.10.1:/media/files/public` (or whatever) and then I could have my phone navigate to it. Chromebook => "OTG-Wifi" && Phone => "OTG-Wifi". Chrombook.push(); Phone.fetch(...);

I couldn't connect directly from phone to chromebook, but if they were both on the same (captive) wifi, I could actually have the phone navigate to the server running on the chromebook via that little device as a "wifi mediator" (even while in the middle of nowhere with no internet for 50 miles around). I had some episodes of Twilight Zone that I'd ripped and could connect to it while on a flight. You could take the SD-Card out of your camera and fetch pictures over to the macbook-without-sd-card situation, then clear the card and take more pics (or keep them on and just be guaranteed that you have a backup).

There's really some non-pirate use cases of things like that, and the overall concept is pretty cool! Got me thinking of something like a neighborhood "Captive SSID", like a LAN that you opt in to vs the WAN that's always connected. It's really instructive to think through for yourself personally: if you were on the moon, and all you had was a wifi access point that held SD-Cards

wolverine876|2 years ago

> when you connect to a Box via Wi-Fi your phone demands to connect to Internet hosts

I don't follow: When my phone connects to a wlan, it will try to connect to the Internet, and if the phone can't do that then the phone won't function on the wlan?

> The only solution I am aware of is to pre-inform users of a local IP address to browse to once their Wi-Fi is connected to the Box.

What is the response from this local IP address that solves the problem above?