Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Wanna know where you are?
#!/bin/bash
echo -n "{\"version\": \"1.1.0\",\"host\": \"maps.google.com\",\"request_address\": true,\"address_language\": \"en_GB\", \"wifi_towers\": [`iwlist scan 2> /dev/null | tr -d '\n' | sed -e 's/Cell [0-9]* - Address: \([0-9A-Z:]*\)[^C]*Channel:\([0-9]*\)[^S]*Signal level=\([0-9-]*\) dBm[^E]*E[^E]*ESSID:"\([^"]*\)"/\{"mac_address": "\1","signal_strength": \3,"age": 0,"channel": \2,"ssid": "\4"}/g' -e 's/[^{]*{/{/' -e 's/}[^{]*{/},{/g' -e 's/\}[^}]*$/\}/' `]}" | curl -s -X POST -d @/dev/fd/0 http://www.google.com/loc/json
# TIP: run with sudo for improved accuracy since iwlist can then provide more than the active hotspot
@dhruvasagar

This comment has been minimized.

Copy link

@dhruvasagar dhruvasagar commented Jul 1, 2011

I get json parsing error.

@pachacamac

This comment has been minimized.

Copy link
Owner Author

@pachacamac pachacamac commented Jul 1, 2011

still works great for me... can you post the returned data?

@dhruvasagar

This comment has been minimized.

Copy link

@dhruvasagar dhruvasagar commented Jul 1, 2011

Actually when I did sudo it worked great

@pachacamac

This comment has been minimized.

Copy link
Owner Author

@pachacamac pachacamac commented Jul 1, 2011

maybe on your system iwlist needs sudo rights to even give back the active access point. I'm on ubuntu ...

@dhruvasagar

This comment has been minimized.

Copy link

@dhruvasagar dhruvasagar commented Jul 2, 2011

I am on ubuntu as well

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.