From b6ec5e24a6c8e776ad6daeb2ed31ba2ce850ecd3 Mon Sep 17 00:00:00 2001 From: f4exb Date: Wed, 19 Dec 2018 08:52:18 +0100 Subject: [PATCH] Reverse API: added server example --- .gitignore | 1 + swagger/sdrangel/examples/server.py | 33 +++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 swagger/sdrangel/examples/server.py diff --git a/.gitignore b/.gitignore index 62403f8f2..48b21d85d 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ debian/sdrangel.debhelper.log debian/debhelper-build-stamp obj-x86_64-linux-gnu/* **/venv/ +*.pyc diff --git a/swagger/sdrangel/examples/server.py b/swagger/sdrangel/examples/server.py new file mode 100644 index 000000000..1d44a3852 --- /dev/null +++ b/swagger/sdrangel/examples/server.py @@ -0,0 +1,33 @@ +from flask import Flask +from flask import request, jsonify +app = Flask(__name__) + + +@app.route('/sdrangel') +def hello_sdrangel(): + return 'Hello, SDRangel!' + + +@app.route('/sdrangel/deviceset//device/run', methods=['GET', 'POST', 'DELETE']) +def device_run(deviceset_index): + if request.method == 'POST': + print("Start device %d" % deviceset_index) + reply = { "state": "idle" } + return jsonify(reply) + elif request.method == 'DELETE': + print("Stop device %d" % deviceset_index) + reply = { "state": "running" } + return jsonify(reply) + elif request.method == 'GET': + return "RUN device %d" % deviceset_index + + +@app.route('/sdrangel/deviceset//device/settings', methods=['GET', 'PATCH', 'PUT']) +def device_settings(deviceset_index): + content = request.get_json(silent=True) + if request.method == 'PATCH': + return jsonify(content) + if request.method == 'PUT': + return jsonify(content) + if request.method == 'GET': + return 'GET settings'