First real UNIX daemon based version of the code. 1000 Cleanups and Fixes... :)

This commit is contained in:
Johannes Findeisen 2021-11-13 07:30:05 +01:00
commit 3e5222f97c
7 changed files with 380 additions and 132 deletions

View file

@ -1,6 +1,6 @@
# uplink - is not some program expecting uplinks to work!
**This README file is not up to date! It will be fixed soon to explain the installation and the usage of uplink.**
**This README file is not up-to-date! It will be fixed soon to explain the installation and the usage of uplink.**
uplink is a tool to monitor the uplink status of AVM FRITZ!Box Cable and DSL based routers. It uses the TR-064 protocol over UPnP.
@ -12,7 +12,7 @@ For now I can say that uplink can monitor the status of you FRITZ!Box uplinks. I
- Git (only for installing from Git repository)
- Python3 (running for me using 3.7.3 on Raspbian 10 and 3.8.5 on Arch Linux)
- fritzconnection >= 1.3.4
- fritzconnection >= 1.5.0
- pymysql >= 0.10.1
Just install the 3rd party dependencies using `pip install $PACKAGE` or your OS package manager
@ -69,17 +69,3 @@ Edit config.json to your needs.
I actually use "[DBeaver](https://dbeaver.io/)" for taking a look at the data uplink is collecting.
There will be a Gtk+ frontend to uplink at some time but this project is at a very early stage of development, so I want to write the collector first. Even support for other SQL databases is in planning in conjunction with the Gtk+ frontend. I use MariaDB only because I can move fast-forward.
## TODO (in no particular order)
- A lot... :)
- Make all config vars as ARGS and vice versa. ARGS have higher priority. Chain: default -> config -> ARGS.
- ~~Parallelize queries using threads to improve performance; Does not work using SQLite because of exclusive access to the database~~ **DONE**
- ~~SQL server backend; MariaDB/MySQL?~~ **DONE**
- Bring back SQLite support
- Switch to ORM (peewee?) to support PostgreSQL, MySQL and SQLite.
- Gtk+ frontend connecting to the database or loading a local copy of a SQLite file. wxGlade?
- ~~A cron mode to not let uplink run in an endless loop to be scheduled and executed by cron.~~ **DONE**
- A daemon mode to be a real UNIX daemon. For now, it's just sleep() based.
- Always keep platform independence in mind but not if uplink looses nice features on Linux.