from flask import Flask, render_template import paho.mqtt.publish as publish import paho.mqtt.subscribe as subscribe app = Flask(__name__) MQTTSERVER = 'en1-pi.eecs.tufts.edu' PLUG = 'ESPURNA-BF4AAA' # Main page @app.route('/') def index(): # Get the sensor value # This is blocking, so it relies on the MQTT 'retain' flag being set msg = subscribe.simple(PLUG + "/voltage", hostname=MQTTSERVER) print("%s %s" % (msg.topic, msg.payload)) return render_template('main.html', sensorValue = msg.payload.decode()) @app.route('/on') def turnOn(): publish.single(PLUG + '/relay/0/set', '1', hostname=MQTTSERVER) return render_template('main.html') @app.route('/off') def turnOff(): publish.single(PLUG + '/relay/0/set', '0', hostname=MQTTSERVER) return render_template('main.html')