From 2d37dd487f0571ce94a0e4e966931dd6697d685f Mon Sep 17 00:00:00 2001 From: Aaron Perley Date: Tue, 11 Oct 2016 02:03:49 -0400 Subject: Add event passing between webapp and show --- webapp/app/views.py | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) (limited to 'webapp/app/views.py') diff --git a/webapp/app/views.py b/webapp/app/views.py index 4aa2c05..1c68688 100644 --- a/webapp/app/views.py +++ b/webapp/app/views.py @@ -1,11 +1,9 @@ from flask import render_template, request -from app import app, sio +from app import app, sio, send_queue, recv_queue import time import threading -thread = None - @app.route('/') @app.route('/index') def index(): @@ -22,6 +20,14 @@ def connect(sid, environ): @sio.on('spawn', namespace='/spawn') def message(sid, data): print("message ", data) + send_queue.put(('spawn', data)) + +@sio.on('ready', namespace='/spawn') +def ready(sid): + print("got ready message from ", sid) + for event in received_events: + print "sending missed event", event + sio.emit(event[0], event[1], room=sid, namespace='/spawn') @sio.on('disconnect', namespace='/spawn') def disconnect(sid): @@ -29,9 +35,12 @@ def disconnect(sid): connections.remove(sid) +received_events = [] +def recv_events(): + while True: + event = recv_queue.get() + sio.emit(event[0], event[1], namespace='/spawn') + received_events.append(event) -def add_creature(): - time.sleep(5) - sio.emit('new creature', {'name': 'fish1'}, namespace='/spawn') -thread = sio.start_background_task(add_creature) +thread = sio.start_background_task(recv_events) -- cgit v1.3.1