radiocicletta / morganfreeman

A simple analytics for icecast servers
15 stars 5 forks source link
analytics icecast icecast-server javascript listeners

Morgan Freeman

A server-side statistics tool for icecast server.

(Like Google Analytics, but worst.)

Installation from source

$ git clone https://github.com/radiocicletta/morganfreeman.git
$ cd morganfreeman
$ virtualenv venv
$ source venv/bin/activate 
(morganfreeman)$ pip install -r requirements.txt
(morganfreeman)$ wget http://geolite.maxmind.com/download/geoip/database/GeoLite2-City.mmdb.gz
(morganfreeman)$ gunzip GeoLite2-City.mmdb.gz

Server initialization

The server-side collect-and-store engine is a standalone multithread process. A collector thread which polls the icecast server and store informations about listeners, and a http server thread listening at port 9000 which provides main interface and data.

run the server simply by invoking from shell (inside the virtualenv):

(morganfreeman)$ python morganfreeman/frosty.py -h <hostname> -u <username> -w <password> -b <bindport> [-r realm] [-d]

Client side usage

Simply go to http://localhost:9000 and enjoy.