anishathalye / offix

"Who is in the office?" 👀
https://anishathalye.com/whos-in-the-office/
GNU General Public License v3.0
186 stars 27 forks source link

OffiX

"Who is in the office?"

OffiX screenshot

This documentation is decent, but it isn't super detailed, at least not yet. If you're trying to set this up and have any questions, feel free to open an issue or send me an email (me@anishathalye.com).

Hardware Setup

Software Setup

There are three main components in OffiX: a WiFi sniffer, a web interface, and the Hubot plugin. Information about each component is in its own directory.

System Setup

To configure a static IP address, edit /etc/network/interfaces and add the following:

auto eth0
iface eth0 inet static
    address x.x.x.x
    netmask x.x.x.x
    gateway x.x.x.x

To put the wifi card in monitor mode, run the following:

sudo ifconfig wlan0 down
sudo iwconfig wlan0 mode monitor
sudo ifconfig wlan0 up

Note: This needs to be run on every reboot!

To install node/npm on the Raspberry Pi, run:

wget http://nodejs.org/dist/v4.2.4/node-v4.2.4-linux-armv6l.tar.gz
cd /usr/local
sudo tar xzvf ~/node-v4.2.4-linux-armv6l.tar.gz --strip=1

Note: These installation instructions are for a 1st-generation Raspberry Pi that has an ARMv6 CPU. If you're using a newer Raspberry Pi, download the appropriate version of node from here.

To install RabbitMQ on the Raspberry Pi, run:

sudo apt-get update
sudo apt-get install rabbitmq-server

To install MongoDB on the Raspberry Pi, run:

sudo apt-get update
sudo apt-get install mongodb

Architecture

The WiFi sniffer and web interface are meant to run on the Raspberry Pi. The two communicate via a RabbitMQ instance running on the Raspberry Pi.

Development Tips

Contributing

Contributions in the form of bug reports/feature requests as well as pull requests are much appreciated!

License

Copyright (c) by the authors (see AUTHORS.txt). Released under GPLv3. See LICENSE.txt for details.