schollz / find

High-precision indoor positioning framework for most wifi-enabled devices.
https://www.internalpositioning.com/
GNU Affero General Public License v3.0
5.05k stars 368 forks source link

Wifi MAC white list #192

Open misisnik opened 7 years ago

misisnik commented 7 years ago

Is possible to define white list of Wifi APs which has to be included into the learning?? Because many of our APs in off the office are just some mobiles etc.. which are not alive all the time so we need to eliminate this MAC addresses.

I can eddit *.rf.json file (delete mac which are not stable) is it OK ? Thanks Mike

schollz commented 7 years ago

Yes, you can do that. Make a JSON of the mac to filter, like

{
"ab:cd:ef":true,
"ab:cd:eg":true
}

and then run the FIND server with the -filter whitelist.json.

misisnik commented 7 years ago

Thank you, but how can I know that is working fine. When I have clicked on "Update" button in administration, it will generate me the group file (grid_4.rf.json), which contains all MAC address as before. Also the same in new group.

I using Docker and i put the white list into the /tmp forlder just for shure. Also I have changed supervisord.conf where i put -filter into the command

command=/usr/local/work/src/github.com/schollz/find/find -rf 5009 -mqtt localhost:1883 -mqttadmin admin -mqttadminpass 123 -mosquitto pgrep mosquitto -data /data -filter /tmp/whitelist.json

my whitelist.json { "e4:8d:8c":true, "d4:ca:6d":true, "cc:2d:e0":true, "6c:3b:6b":true, "64:d1:54":true, "4c:5e:0c":true, "00:0c:42":true }

misisnik commented 7 years ago

So fingerprint.go => func filterFingerprint why is there newFingerprint[curNum].Mac = newFingerprint[curNum].Mac[0:len(newFingerprint[curNum].Mac)-1] + "0"

I need to filter mac "e4:8d:8c:f1:fa:76" but this line makes it to "e4:8d:8c:f1:fa:70". So I have removed this line and filtration working fine.