Here's the code for the app which drives seab.us.
#Listener The listener program receives and processses marine telemetry data relayed from a raspberry pi with an RTL-SDR tuner running aisdecoder to decode AIS beacons.
#Web The flask app provides near realtime access to the seabus telemetry data via websocket push updates.
#Hacking The vagrantfile will get you most of the way to a working dev environment, may be a bit wonky though.
To set up:
- Activate virtualenv.
vagrant@vagrant-ubuntu-trusty-64:~/seabus$ source seabus/.venv/bin/activate
- Initialize empty database.
(.venv) vagrant@vagrant-ubuntu-trusty-64:~/seabus$ ./manage.py db upgrade
To run the web app:
(.venv) vagrant@vagrant-ubuntu-trusty-64:~/seabus$ ./manage.py rundev
To run the listener:
(.venv) vagrant@vagrant-ubuntu-trusty-64:~/seabus$ ./manage.py listendev
To send a few recorded seabus AIS update beacons to the running listener:
(.venv) vagrant@vagrant-ubuntu-trusty-64:~/seabus/seabus/nmea_listen$ ./sendbeacons.sh seabus_beacons.txt
#API Interested in accessing Seabus data? There's no API yet but if you've got a cool idea for using the data I'd love to hear about it.