├── .editorconfig ├── .gitignore ├── .gitlab-ci.yml ├── Dockerfile ├── LICENSE ├── README.rst ├── docker-compose.yml ├── docker ├── app.ini.docker ├── docker-entrypoint.sh ├── system-requirements.txt └── uwsgi.ini ├── iot ├── __init__.py ├── config.py.template └── main.py ├── requirements.txt └── server ├── app.ini.template ├── crons.yml ├── main ├── __init__.py ├── asgi.py ├── settings.py ├── static │ └── main │ │ ├── css │ │ └── toilet.less │ │ ├── img │ │ ├── bg.jpg │ │ ├── dead.png │ │ ├── favicon-free.ico │ │ ├── favicon-toilet.ico │ │ ├── favicon-using.ico │ │ ├── ok.png │ │ ├── pee.png │ │ ├── poop.png │ │ └── toilet.png │ │ └── js │ │ ├── countdown.min.js │ │ ├── less-1.3.1.min.js │ │ ├── reconnecting-websocket.min.js │ │ ├── toilet-stats-chart.js │ │ └── toilet-status.js ├── urls.py └── wsgi.py ├── manage.py ├── postgres_stats ├── __init__.py ├── aggregates.py └── functions.py ├── setup.cfg ├── stats ├── __init__.py ├── admin.py ├── apps.py ├── migrations │ └── __init__.py ├── models.py ├── stats.py ├── templates │ └── toilet_stats.html ├── tests.py ├── urls.py ├── utils.py └── views.py └── toilet ├── __init__.py ├── admin.py ├── apps.py ├── consumers.py ├── managers.py ├── migrations ├── 0001_initial.py ├── 0002_auto_20170112_1435.py ├── 0003_toiletlecture_total_time.py ├── 0004_auto_20170121_1942.py └── __init__.py ├── models.py ├── routing.py ├── serializers.py ├── templates ├── base.html └── toilet_status.html ├── urls.py └── views.py /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/.gitlab-ci.yml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/LICENSE -------------------------------------------------------------------------------- /README.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/README.rst -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docker/app.ini.docker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/docker/app.ini.docker -------------------------------------------------------------------------------- /docker/docker-entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/docker/docker-entrypoint.sh -------------------------------------------------------------------------------- /docker/system-requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/docker/system-requirements.txt -------------------------------------------------------------------------------- /docker/uwsgi.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/docker/uwsgi.ini -------------------------------------------------------------------------------- /iot/__init__.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | -------------------------------------------------------------------------------- /iot/config.py.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/iot/config.py.template -------------------------------------------------------------------------------- /iot/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/iot/main.py -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/requirements.txt -------------------------------------------------------------------------------- /server/app.ini.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/app.ini.template -------------------------------------------------------------------------------- /server/crons.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/crons.yml -------------------------------------------------------------------------------- /server/main/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/main/asgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/asgi.py -------------------------------------------------------------------------------- /server/main/settings.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/settings.py -------------------------------------------------------------------------------- /server/main/static/main/css/toilet.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/css/toilet.less -------------------------------------------------------------------------------- /server/main/static/main/img/bg.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/bg.jpg -------------------------------------------------------------------------------- /server/main/static/main/img/dead.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/dead.png -------------------------------------------------------------------------------- /server/main/static/main/img/favicon-free.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/favicon-free.ico -------------------------------------------------------------------------------- /server/main/static/main/img/favicon-toilet.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/favicon-toilet.ico -------------------------------------------------------------------------------- /server/main/static/main/img/favicon-using.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/favicon-using.ico -------------------------------------------------------------------------------- /server/main/static/main/img/ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/ok.png -------------------------------------------------------------------------------- /server/main/static/main/img/pee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/pee.png -------------------------------------------------------------------------------- /server/main/static/main/img/poop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/poop.png -------------------------------------------------------------------------------- /server/main/static/main/img/toilet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/img/toilet.png -------------------------------------------------------------------------------- /server/main/static/main/js/countdown.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/js/countdown.min.js -------------------------------------------------------------------------------- /server/main/static/main/js/less-1.3.1.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/js/less-1.3.1.min.js -------------------------------------------------------------------------------- /server/main/static/main/js/reconnecting-websocket.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/js/reconnecting-websocket.min.js -------------------------------------------------------------------------------- /server/main/static/main/js/toilet-stats-chart.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/js/toilet-stats-chart.js -------------------------------------------------------------------------------- /server/main/static/main/js/toilet-status.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/static/main/js/toilet-status.js -------------------------------------------------------------------------------- /server/main/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/urls.py -------------------------------------------------------------------------------- /server/main/wsgi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/main/wsgi.py -------------------------------------------------------------------------------- /server/manage.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/manage.py -------------------------------------------------------------------------------- /server/postgres_stats/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/postgres_stats/__init__.py -------------------------------------------------------------------------------- /server/postgres_stats/aggregates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/postgres_stats/aggregates.py -------------------------------------------------------------------------------- /server/postgres_stats/functions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/postgres_stats/functions.py -------------------------------------------------------------------------------- /server/setup.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/setup.cfg -------------------------------------------------------------------------------- /server/stats/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/stats/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/admin.py -------------------------------------------------------------------------------- /server/stats/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/apps.py -------------------------------------------------------------------------------- /server/stats/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/stats/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/models.py -------------------------------------------------------------------------------- /server/stats/stats.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/stats.py -------------------------------------------------------------------------------- /server/stats/templates/toilet_stats.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/templates/toilet_stats.html -------------------------------------------------------------------------------- /server/stats/tests.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/tests.py -------------------------------------------------------------------------------- /server/stats/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/urls.py -------------------------------------------------------------------------------- /server/stats/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/utils.py -------------------------------------------------------------------------------- /server/stats/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/stats/views.py -------------------------------------------------------------------------------- /server/toilet/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/toilet/admin.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/admin.py -------------------------------------------------------------------------------- /server/toilet/apps.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/apps.py -------------------------------------------------------------------------------- /server/toilet/consumers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/consumers.py -------------------------------------------------------------------------------- /server/toilet/managers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/managers.py -------------------------------------------------------------------------------- /server/toilet/migrations/0001_initial.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/migrations/0001_initial.py -------------------------------------------------------------------------------- /server/toilet/migrations/0002_auto_20170112_1435.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/migrations/0002_auto_20170112_1435.py -------------------------------------------------------------------------------- /server/toilet/migrations/0003_toiletlecture_total_time.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/migrations/0003_toiletlecture_total_time.py -------------------------------------------------------------------------------- /server/toilet/migrations/0004_auto_20170121_1942.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/migrations/0004_auto_20170121_1942.py -------------------------------------------------------------------------------- /server/toilet/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /server/toilet/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/models.py -------------------------------------------------------------------------------- /server/toilet/routing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/routing.py -------------------------------------------------------------------------------- /server/toilet/serializers.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/serializers.py -------------------------------------------------------------------------------- /server/toilet/templates/base.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/templates/base.html -------------------------------------------------------------------------------- /server/toilet/templates/toilet_status.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/templates/toilet_status.html -------------------------------------------------------------------------------- /server/toilet/urls.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/urls.py -------------------------------------------------------------------------------- /server/toilet/views.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/APSL/sauron/HEAD/server/toilet/views.py --------------------------------------------------------------------------------