kootenpv / whereami

Uses WiFi signals :signal_strength: and machine learning to predict where you are
GNU Affero General Public License v3.0
5.1k stars 249 forks source link

What can I do with this? #32

Open JesseTG opened 7 years ago

JesseTG commented 7 years ago

I like the idea of whereami, and it's pretty accurate. Only problem is that I don't know what to do with it. Any ideas?

iakat commented 7 years ago

I had the idea to make a whereami-client & whereami-server for my office, which would consist of:

kootenpv commented 7 years ago

For some IoT stuff, e.g. this is a fun example: wherearehue.

gocreating commented 7 years ago

same problem +1

iakat commented 7 years ago

PoC of my idea above: https://github.com/chauffer/hereiam

JesseTG commented 7 years ago

@kootenpv I don't use any IoT tech. I do, however, have a laptop that I carry around with me and use at all times.

JesseTG commented 7 years ago

Uh, here's some ideas:

The common theme here is that the physical location of a network on Earth isn't important, but the fact that you visit that network regularly is. Also, a lot of it depends on specific personal habits (so it's probably hard to generalize to a GUI or something).

I can't see myself doing any of these things except for the first, though.

JesseTG commented 7 years ago

Ooh, maybe whenever you cross timezones (like if you live just on the border and commute back and forth) it can update your laptop's clock whenever you arrive at work or home?

samta commented 6 years ago

I think I have done something really interesting (at least I would like to believe that ;)) with this super smart package.

I have this habit of keep forgetting my mobile at my home or in office. And then I have to search that where I kept my mobile.

So I build a solution using whereami package and AWS. Let me explain my design.

I have three lambda functions: the basic work of each function are as follows:

  1. learnLocation: This function learns the location of my mobile. I basically used learn function and gave enough samples. After learning this function upload the sample files (.txt and model.pkl) to amazon s3.
  2. updateLocation: This function update the location in dynamodb. Mobile updates the access points every after an hour to this function. It downloads files from s3 and does the analysis and based on the result updates the location in dynamodb.
  3. findLocation: This function just queries the last updated location to dynamodb.

I have also integrated Amazon Lex service to findLocation lambda function. I query Lex using any mobile or laptop and ask "Where are you ?" and it returns the location.

It works perfectly except sometimes in my home its unable to distinguish between rooms (bedroom/hall/kitchen). In the office, the result is quite satisfactory. May be because of space and signal strength.

Any thought about this overall solution ??

kootenpv commented 6 years ago

@samta That is indeed very cool! Great that you integrated it like that.

I'm sorry to be the one to tell you, but last time I lost my phone I was happy to find that Google provides a "service":

https://myaccount.google.com/find-your-phone

Even if your sound is off, it can make your phone scream so you'll be able to locate it :)

samta commented 6 years ago

Ahh google beat me ;)