hsiboy / seabus

forked from rsalmond/seabus - porting for use with dxmaps.com

Home Page:https://github.com/hsiboy/seabus

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Seab.us

base requirements setup

    sudo apt-get update
    sudo apt-get install -y git nginx python-pip python-dev python-pandas memcached sqlite3
    sudo pip install virtualenv

repo setup

    ssh-keyscan -H github.com >> ~/.ssh/known_hosts
    git clone git@github.com:hsiboy/seabus.git
    cd seabus
    virtualenv /seabus/.venv-seabus
    source seabus/.venv-seabus/bin/activate
    pip install -r /home/vagrant/seabus/seabus/requirements.txt

note, there is a dependancy on meld3 which wont work with Python3, so you may want to

 virtualenv -p `which python2.7` seabus/.venv-seabus

instead.

nginx setup

    rm /etc/nginx/sites-enabled/default
    cp config/nginx-seabus-dev /etc/nginx/sites-enabled/seabus
    mkdir -p /var/www
    ln -s /home/<user>/seabus/seabus/web/static /var/www/seabus
    service nginx reload

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.

  • Initialize empty database.
(.venv) user@host:~/seabus$ ./manage.py db upgrade

To run the web app:

(.venv) user@host:~/seabus$ ./manage.py rundev

To run the listener:

(.venv) user@host:~/seabus$ ./manage.py listendev

To send a few recorded (canned) seabus AIS update beacons to the running listener:

(.venv) user@host:~/seabus/seabus/nmea_listen$ ./sendbeacons.sh seabus_beacons.txt 

#API

There is an experimental API read endpoint available at http://api.seab.us/data/v1. At the moment it requires no access key and provides the same data delivered to the web front end. Both of these things may change, watch this space!

About

forked from rsalmond/seabus - porting for use with dxmaps.com

https://github.com/hsiboy/seabus

License:MIT License


Languages

Language:Python 61.7%Language:Jupyter Notebook 37.8%Language:HTML 0.2%Language:JavaScript 0.1%Language:CSS 0.0%Language:C 0.0%Language:Mako 0.0%Language:Shell 0.0%Language:Makefile 0.0%