Editing User:Magick777/WISPr WiFi Autologin
Warning: You are not logged in.
Your IP address will be recorded in this page's edit history.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 51: | Line 51: | ||
* get involved in whether we connect to the SSID or not (we should just do auth) | * get involved in whether we connect to the SSID or not (we should just do auth) | ||
- | === Design challenges | + | === Design challenges === |
'''* Our WISPr client needs to speak XML, HTTP and HTTPS from CLI | '''* Our WISPr client needs to speak XML, HTTP and HTTPS from CLI | ||
Line 59: | Line 59: | ||
'''Option 1''': keep python client as it is, using httplib + ssl. Users will just have to install ssl. | '''Option 1''': keep python client as it is, using httplib + ssl. Users will just have to install ssl. | ||
- | '''Option 2''': update python client to use | + | '''Option 2''': update python client to use [https://pypi.python.org/pypi/ndg-httpsclient ndg-httpsclient] if it works under python 2.5 |
- | '''Option 3''': update python client to use [https://pypi.python.org/pypi/ | + | '''Option 3''': update python client to use [https://pypi.python.org/pypi/pycurl pycurl], let libcurl do the fetching & carrying |
- | '''Option 4''': | + | '''Option 4''': find an alternative to python |
Line 77: | Line 77: | ||
* The density of BTWiFi hotspots means that one can sometimes reach two or three possible routers, all connected to the same captive portal. This can sometimes (rarely) lead to unexpected effects, if disconnected from one network and connected to another one that shares the same portal; the portal views us as logged in, but our traffic remains blocked. | * The density of BTWiFi hotspots means that one can sometimes reach two or three possible routers, all connected to the same captive portal. This can sometimes (rarely) lead to unexpected effects, if disconnected from one network and connected to another one that shares the same portal; the portal views us as logged in, but our traffic remains blocked. | ||
- | * In particular, this has been noted when switching from BtWiFi to BTWiFi-with-Fon, and it is imagined that they share a web portal but not a DHCP server. This caused problems for the perl client (which presumes by the absence of a redirect that we are connected) but not for the python client, which tests whether it is connected by verifying the content of an HTTP GET request. Of course, it creates a dependency on the availability of a remote server and I don't much like the script's default of fetching "www.yahoo.co.jp"; we don't need an entire HTML page to confirm that we are online, but we do need to keep the check in some form. | + | * In particular, this has been noted when switching from BtWiFi to BTWiFi-with-Fon, and it is imagined that they share a web portal but not a DHCP server. This caused problems for the perl client (which presumes by the absence of a redirect that we are connected) but not for the python client, which tests whether it is connected by verifying the content of an HTTP GET request. Of course, it creates a dependency on the availability of a remote server and I don't much like the script's default of fetching "www.yahoo.co.jp"; we don't need an entire HTML page to confirm that we are online, but we do need to keep the check in some form. |
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
== N900 PyWISPr client == | == N900 PyWISPr client == | ||
Line 83: | Line 90: | ||
See also http://talk.maemo.org/showthread.php?t=90777 | See also http://talk.maemo.org/showthread.php?t=90777 | ||
- | === Changelog & | + | === Changelog & source attribution === |
- | * | + | ==== Changes made ==== |
+ | |||
+ | * Begins as an N900 fork of https://bitbucket.org/tamias/pywispr | ||
* Run from sh as per http://softwareswirl.blogspot.co.uk/2011/06/starting-python-script-intelligently.html | * Run from sh as per http://softwareswirl.blogspot.co.uk/2011/06/starting-python-script-intelligently.html | ||
- | * Exit automatically on successful login, don't wait for user | + | * Exit automatically on successful login, don't wait for user (exit @ line 266) |
* Replaced the slow online check (a Yahoo web scrape) with Google's generate_204 check | * Replaced the slow online check (a Yahoo web scrape) with Google's generate_204 check | ||
** logic http://www.chromium.org/chromium-os/chromiumos-design-docs/network-portal-detection | ** logic http://www.chromium.org/chromium-os/chromiumos-design-docs/network-portal-detection | ||
Line 93: | Line 102: | ||
** used for Chromium OS and Android; backend shouldn't go away any time soon | ** used for Chromium OS and Android; backend shouldn't go away any time soon | ||
** reduces unnecessary bandwidth use, somewhat faster, works better internationally | ** reduces unnecessary bandwidth use, somewhat faster, works better internationally | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
== WISPr Networks == | == WISPr Networks == |
Learn more about Contributing to the wiki.