Working prototype
This commit is contained in:
parent
6b895bcf06
commit
c513390287
|
@ -10,6 +10,7 @@ import json
|
|||
SOURCE = "http://192.168.242.199/meter/now"
|
||||
MQTT_SERVER = "192.168.0.42"
|
||||
MQTT_TOPIC = "home/power"
|
||||
DELAY = 5
|
||||
|
||||
def obtain_data() :
|
||||
req = requests.get(SOURCE)
|
||||
|
@ -17,21 +18,24 @@ def obtain_data() :
|
|||
return req.json()
|
||||
|
||||
if __name__ == "__main__" :
|
||||
data = obtain_data()
|
||||
if data['status'] != 'ok' :
|
||||
print("status: %s" % data['status'])
|
||||
os.Exit(1)
|
||||
|
||||
# Get Power readings
|
||||
power = data['elec']['power']['now']['value'] # Current power readings in Watt
|
||||
print("%d W" % (power))
|
||||
|
||||
# MQTT publish
|
||||
# MQTT client
|
||||
client = mqtt.Client()
|
||||
client.connect(MQTT_SERVER, 1883, 60)
|
||||
tsp = int(time.time())
|
||||
data = {"power": power, "timestamp": tsp}
|
||||
msg = json.dumps(data)
|
||||
print(msg)
|
||||
result = client.publish(MQTT_TOPIC, msg)
|
||||
|
||||
while True :
|
||||
data = obtain_data()
|
||||
if data['status'] != 'ok' :
|
||||
print("status: %s" % data['status'])
|
||||
os.Exit(1)
|
||||
|
||||
# Get Power readings
|
||||
power = data['elec']['power']['now']['value'] # Current power readings in Watt
|
||||
|
||||
# MQTT publish
|
||||
tsp = int(time.time())
|
||||
data = {"power": power, "timestamp": tsp}
|
||||
msg = json.dumps(data)
|
||||
print(msg)
|
||||
result = client.publish(MQTT_TOPIC, msg)
|
||||
time.sleep(DELAY)
|
||||
|
||||
|
|
Loading…
Reference in a new issue