maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   An app to automatically grab open wifi? (https://talk.maemo.org/showthread.php?t=23248)

arover 2008-08-29 15:28

An app to automatically grab open wifi?
 
Does such an app exist with the N8x0? Or some sort of script I can use? I'm basically looking for a way to have my N810 grab the next open wifi connection wherever it goes when I'm using it at times, or at least a way to make it automatically grab by SSID, or even grab all open connections with some sort of exception list. Any ideas, anyone?

arover 2008-08-29 16:03

Re: An app to automatically grab open wifi?
 
Nevermind..I found something: Devicescape. Work well?

timsamoff 2008-08-29 16:11

Re: An app to automatically grab open wifi?
 
Quote:

Originally Posted by arover (Post 218962)
Nevermind..I found something: Devicescape. Work well?

It's cool (closed source, though). It doesn't automatically pick open wifi spots unless they are stored in their database (user-driven). It will, though, automatically connect to any of the spots you have stored on your tablet.

-T.

arover 2008-08-29 16:25

Re: An app to automatically grab open wifi?
 
Are there any tools out there that grab any and all unsecured wireless connections? If my experience with linux were a bit more in-depth, I'd look into writing a script myself to run a connection to "x" if there is no security.

Saturn 2008-08-29 18:36

Re: An app to automatically grab open wifi?
 
Hi,

not exactly what you're asking, but you might find it useful..

I connect to my access points using:
dbus-send --type=method_call --system --dest=com.nokia.icd /com/nokia/icd com.nokia.icd.connect string:$IAP uint32:0

replacing $IAP with the name of my access point.

I got it from here:
http://www.gossamer-threads.com/lists/maemo/users/13694

tz1 2008-08-29 19:55

Re: An app to automatically grab open wifi?
 
when not (or poorly connected), doing "iwlist wlan0 scan" will return a list of access points (and AdHoc networks) including if they are encrypted. Then the above dbus command could connect to them.

One problem might be some places that are semi-public and use a bounce "By using this service you agree to these TOS:..., Click I Agree".

But in general, if I do any network activity it seems to try to reconnect to anything it has seen - including the default netgear, linksys, etc. I have in my list - when it loses a connection (like when I'm driving from my hotel, it gets the next one, the one at the fastfood place, then the office store, and the coffee shop in order, since I hear the "disconnected" tone several times).

arover 2008-08-29 22:25

Re: An app to automatically grab open wifi?
 
ok then I guess my question is this: Is it possible to make a script that can do the following :
- Check every x minutes for a lack of connection OR run upon disconnection
- run the dbus command where the variable access point is defined by the scanned point with no security and the greatest signal strength according to iwlist..

stangri 2008-08-30 13:02

Re: An app to automatically grab open wifi?
 
Uhm, not sure if it will be of great help, but I guess it wouldn't hurt. Some folks over at dd-wrt (it's a third-party linux-based firmware for home routers) wrote a script which does exactly this -- it picks up the open wifi AP with the strongest signal, checks if it connects to internet (some open AP require the login/pass to get the actual internet) and it cycles to the nest strongest signal on failure.
Given that that script works on linux, I'm guessing it could be of help. I'd post a link to the forum thread, but not sure if it's welcomed on this forum.

arover 2008-08-30 14:58

Re: An app to automatically grab open wifi?
 
If you don't wish to post it here, I'd be grateful if you could message me the link. I mean, I really don't see any problem in posting it here, but maybe there are some rules I don't know of :confused:

Edit: I found the script you were talking about, but I think it uses commands that are mainly only used on the DD-WRT firmware. I DID however find a bash script someone wrote on the other linux forums. I'm going to try it out and I'll report back the results.

arover 2008-08-30 16:48

Re: An app to automatically grab open wifi?
 
Here's the script I found, credits to a linux forum, though I can't get it to work...seems to be pulling up an error on line 31, and I have no idea what it means. If anyone else wishes to try it, and possibly get it to work, I'd be forever grateful. Keep in mind you must have bash installed, as it is a bash script: (I wish it were more clean but I can't figure out how to keep the formatting)

Quote:

#!/bin/bash
# Finds the strongest unencrypted AP and tries to connect to it via dhcp
# Call this script like "wifi.sh wlan0"
TEMP=/tmp/bestap.tmp
LOCK=/var/lock/bestap.lock
if [ `whoami` != "root" ];then
echo "Sorry, you need to be root to run this program"
exit 1
fi

if [[ -z $1 ]];then
echo "USAGE: $0 device"
exit 1
else
interface=$1
fi

# Checking for lock
if [[ -e $LOCK ]];then
exit 1; # Too simply nothing to do here :)
else
touch $TEMP $LOCK
fi


# Proggy
iwlist $interface scan > $TEMP
NumAPs=`cat $TEMP | grep ESSID | wc -l`
BestAP=0
BestQuality=-1
for i in `seq 1 $NumAPs`;
do
# Check if AP is encrypted
Encryption=`cat $TEMP | grep Encryption | head -n$i | tail -n1 | cut -d":" -f2`
if [ $Encryption = "off" ]; then
# Find AP with the highest quality
QUALITY=`cat $TEMP | grep Quality | head -n$i | tail -n1 | cut -d":" -f2 | cut -d"/" -f1 | sed 's/ //g'`
if [ "$QUALITY" -gt "$BestQuality" ]; then
BestQuality=$QUALITY
BestAP=$i
fi
fi
done
if [ $BestAP -gt 0 ]; then
# Yay, we found an unencrypted AP:
echo Connecting to...
ESSID=`cat $TEMP | grep ESSID | head -n$BestAP | tail -n1 | cut -d""" -f2`
echo ESSID=$ESSID
MODE=`cat $TEMP | grep Mode | head -n$BestAP | tail -n1 | cut -d":" -f2`
echo Mode=$MODE
CHANNEL=`cat $TEMP | grep Channel | head -n$BestAP | tail -n1 | cut -d"(" -f2 | sed 's/Channel //g' | sed 's/)//g'`
echo Channel=$CHANNEL
# Connect
iwconfig $interface essid $ESSID mode $MODE channel $CHANNEL
if [ -e /etc/dhcpc/dhcpcd-${interface}.pid ]; then
rm /etc/dhcpc/dhcpcd-${interface}.pid
fi
dhcpcd $interface
# Cleanup
fi
rm -f $TEMP $LOCK


All times are GMT. The time now is 18:35.

vBulletin® Version 3.8.8