Added Cantina.

This commit is contained in:
Sebastian 2019-03-09 22:30:36 +01:00
parent a43b1726df
commit c5e2cdc70c
2 changed files with 28 additions and 10 deletions

View File

@ -11,7 +11,8 @@ import paho.mqtt.client as mqtt
from eq3bt import Thermostat from eq3bt import Thermostat
thermostatBallpit = Thermostat('00:1A:22:0D:BE:EE') thermostatBallpit = Thermostat('00:1A:22:0D:BE:EE')
thermostatBallpit = Thermostat('00:1A:22:0D:BE:EE') thermostatCantina = Thermostat('00:1A:22:0D:C2:5D')
temperature_off = 12 temperature_off = 12
temperature_on = 19 temperature_on = 19
@ -21,6 +22,7 @@ def on_connect(client, userdata, flags, rc):
log.debug("Connected with result code " + str(rc)) log.debug("Connected with result code " + str(rc))
client.subscribe("foobar/oben/baellebad/heizung/action") client.subscribe("foobar/oben/baellebad/heizung/action")
client.subscribe("foobar/oben/cantina/heizung/action")
sendReadings() sendReadings()
@ -33,6 +35,7 @@ def on_message(client, userdata, message):
msg = message.payload.decode("utf-8") msg = message.payload.decode("utf-8")
log.debug('received message: %s from %s', format(msg), format(message.topic)) log.debug('received message: %s from %s', format(msg), format(message.topic))
# Baellebad
if (message.topic == "foobar/oben/baellebad/heizung/action"): if (message.topic == "foobar/oben/baellebad/heizung/action"):
if (msg == "on"): if (msg == "on"):
thermostatBallpit.target_temperature=temperature_on thermostatBallpit.target_temperature=temperature_on
@ -42,7 +45,15 @@ def on_message(client, userdata, message):
else: else:
thermostatBallpit.target_temperature=int(msg) thermostatBallpit.target_temperature=int(msg)
# Cantina
if (message.topic == "foobar/oben/cantina/heizung/action"):
if (msg == "on"):
thermostatCantina.target_temperature=temperature_on
else:
if (msg == "off"):
thermostatCantina.target_temperature=temperature_off
else:
thermostatCantina.target_temperature=int(msg)
def sendReadings(): def sendReadings():
log.debug('read target temperature from thermostats') log.debug('read target temperature from thermostats')
@ -55,12 +66,22 @@ def sendReadings():
temp=thermostatBallpit.target_temperature temp=thermostatBallpit.target_temperature
if(temp == temperature_on): if(temp == temperature_on):
temp = str(temp) + " on" temp = str(temp) + " on"
if(temp == temperature_off): if(temp == temperature_off):
temp = str(temp) + " off" temp = str(temp) + " off"
client.publish("foobar/oben/baellebad/heizung/status", temp, qos=1, retain=True) client.publish("foobar/oben/baellebad/heizung/status", temp, qos=1, retain=True)
# Cantina
# Update readings
thermostatCantina.update()
# Send target temperatures
temp=thermostatCantina.target_temperature
if(temp == temperature_on):
temp = str(temp) + " on"
if(temp == temperature_off):
temp = str(temp) + " off"
client.publish("foobar/oben/cantina/heizung/status", temp, qos=1, retain=True)
log.debug('sent readings') log.debug('sent readings')
@ -111,6 +132,3 @@ if __name__ == '__main__':
schedule.run_pending() schedule.run_pending()
time.sleep(1) time.sleep(1)
# sendReadings()
# time.sleep(60)

View File

@ -3,11 +3,11 @@ Description=heizberry
After=network-online.target After=network-online.target
[Service] [Service]
Type=Simple Type=simple
ExecStart=/srv/herizberry/heizberry.py ExecStart=/srv/heizberry/heizberry.py
Restart=always Restart=always
RestartSec=3 RestartSec=20
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target