diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0d20b64 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.pyc diff --git a/main.py b/main.py index cf3e373..822a64b 100644 --- a/main.py +++ b/main.py @@ -9,6 +9,7 @@ from spejsiot.rendering import render_endpoint logging.basicConfig(level=logging.DEBUG, format='[%(asctime)-15s] %(name)-10s %(levelname)7s: %(message)s') app = flask.Flask(__name__) +app.config['DISABLE_GUI'] = True app.config['PORT'] = 5000 app.config['BROKER'] = ('mqtt.waw.hackerspace.pl', 1883) app.config['PREFIX'] = 'iot/' @@ -24,6 +25,9 @@ def utility_processor(): @app.route('/') def index(): + if app.config.get('DISABLE_GUI'): + flask.abort(404) + return flask.render_template('index.html', devices=manager.devices) @app.route('/api/1/devices/') @@ -42,11 +46,13 @@ def api_device_info(node_id): @app.route('/api/1/device////') @app.route('/api/1/devices////') def device_write(node_id, endpoint, prop, value): - return flask.jsonify(manager.handle_request(node_id, endpoint, prop, value)) + return flask.jsonify({ + "result": manager.handle_request(node_id, endpoint, prop, value) + }) @app.route('/api/1/devices///', methods=['PUT']) def device_put(node_id, endpoint, prop): - return flask.jsonify(manager.handle_request(node_id, endpoint, prop, flask.request.json['value'])) + return device_write(node_id, endpoint, prop, flask.request.json['value']) if __name__ == "__main__": diff --git a/spejsiot/manager.py b/spejsiot/manager.py index f03cf26..bb1a8bf 100644 --- a/spejsiot/manager.py +++ b/spejsiot/manager.py @@ -88,4 +88,3 @@ class SpejsiotManager(mqtt.Client): def on_log(self, client, userdata, level, buf): self.logger.debug('[%r] %r', level, buf) -