# pyHeatpump Projet de remplacement du "RPiPasserelle" d'Otec. # Dependencies pysqlite3 umodbus starlette uvicorn pytest requests # Install Initialize a database in the home directory of your system user. `sqlite3 -init ./db/pyheatpump.sql /var/run/pyheatpump/pyheatpump.sqlite3` Create a configuration file in `/etc/pyheatpump.ini` . ``` [heatpump] mac_address = 00:00:00:00:00:00 database = /var/run/pyheatpump/pyheatpump.sqlite3 [supervisor] scheme = https host = supervision-test.gteo.fr:8081 post_path = /Symfony/web/app_dev.php/boardws/insert get_path = /Symfony/web/app_dev.php/boardws/orders interval = 10000 heatpump_id = 42 [api] host = 0.0.0.0 port = 80 ``` Fetch manually to initialize the data. ``` pyheatpump fetch ``` Insert the init files into the right locations. ``` cp -t /etc/init.d conf/pyheatpump chmod +x /etc/init.d/pyheatpump rc-update add default pyheatpump rc-service pyheatpump start ``` ``` cp ./conf/pyheatpump.systemd.socket /etc/systemd/system/pyheatpump.socket cp ./conf/pyheatpump.systemd.service /etc/systemd/system/pyheatpump.service systemctl daemon-reload systemctl enable pyheatpump systemctl start pyheatpump ``` Enable the *cron task / systemd timer* for the automatic fetch and supervise tasks. ``` cat conf/pyheatpump.cron >> /etc/crontab ``` ``` cp ./conf/pyheatpump.systemd.timer /etc/systemd/system/pyheatpump.timer ```