From fe624b7f5963d69bc6826c1b3845644ce14a5344 Mon Sep 17 00:00:00 2001 From: Oleg Kalachev Date: Tue, 7 Nov 2017 15:38:25 +0300 Subject: [PATCH] Simple web-server node for serving Clever interface --- clever/launch/web_server.launch | 5 +++++ clever/requirements.txt | 1 + clever/src/web_server.py | 28 ++++++++++++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 clever/launch/web_server.launch create mode 100644 clever/requirements.txt create mode 100644 clever/src/web_server.py diff --git a/clever/launch/web_server.launch b/clever/launch/web_server.launch new file mode 100644 index 00000000..9d8944ac --- /dev/null +++ b/clever/launch/web_server.launch @@ -0,0 +1,5 @@ + + + + + diff --git a/clever/requirements.txt b/clever/requirements.txt new file mode 100644 index 00000000..484d3c57 --- /dev/null +++ b/clever/requirements.txt @@ -0,0 +1 @@ +flask==0.12.2 diff --git a/clever/src/web_server.py b/clever/src/web_server.py new file mode 100644 index 00000000..d035ac4b --- /dev/null +++ b/clever/src/web_server.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python + +import rospy +from flask import Flask, send_from_directory, send_file + + +rospy.init_node('web_server', disable_signals=True) + + +port = rospy.get_param('~port', 8080) +host = rospy.get_param('~host', '0.0.0.0') +serve_path = rospy.get_param('~path') +app = Flask(__name__) + + +@app.route('/') +def serve_index(): + return send_from_directory(serve_path, 'index.html') + + +@app.route('/') +def serve_static(path): + print serve_path, path + return send_from_directory(serve_path, path) + + +rospy.loginfo('Serving on %s:%s', host, port) +app.run(host=host, port=port, threaded=True)