diff options
Diffstat (limited to 'webapp/webapp.py')
-rw-r--r-- | webapp/webapp.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/webapp/webapp.py b/webapp/webapp.py new file mode 100644 index 0000000..676fc27 --- /dev/null +++ b/webapp/webapp.py @@ -0,0 +1,39 @@ +import traceback + +from rmq import send as rmq_send +from flask import Flask +from flask import render_template +from flask_sockets import Sockets + +app = Flask(__name__) +sockets = Sockets(app) + [email protected]('/') +def index(): + return render_template('index.html') + [email protected]('/ws') +def websocket_route(ws): + try: + while not ws.closed: + message = ws.receive() + + if not message: + continue + print(f"received '{message}'") + + rmq_send(message) + + except: + print(traceback.format_exec()) + + finally: + if not ws.closed: + ws.close() + +if __name__ == '__main__': + #app.run(host='0.0.0.0', port=5000, debug=True) + from gevent import pywsgi + from geventwebsocket.handler import WebSocketHandler + server = pywsgi.WSGIServer(('0.0.0.0', 5000), app, handler_class=WebSocketHandler) + server.serve_forever() |