from flask import Flask, render_template app = Flask(__name__) @app.route("/") def index(): return render_template('index.html', endpoint='auth') # Twisted from flask.ext.twisted import Twisted twisted = Twisted(app) # SockJS import json from flask.ext.sockjs import SockJS, broadcast ws = SockJS(twisted) auth = ws.createEndpoint('auth') def authenticated(): return [transport for transport in auth.transports() if transport.authenticated is True] @auth.on('connection') def ws_connection(transport): transport.authenticated = False transport.write(json.dumps({'cmd': 'AUTHENTICATION_REQUIRED'})) @auth.on('data') def ws_message(transport, message): if transport.authenticated: transport.write(message) else: data = {}
# -*- coding: utf-8 -*- # Flask from flask import Flask, render_template app = Flask(__name__) @app.route("/") def index(): return render_template('index.html', endpoint='echo') # Twisted from flask.ext.twisted import Twisted twisted = Twisted(app) # SockJS from flask.ext.sockjs import SockJS ws = SockJS(twisted) echo = ws.createEndpoint('echo') @echo.on('data') def ws_message(transport, message): transport.write(message) # Main if __name__ == '__main__': app.run()
# -*- coding: utf-8 -*- # Flask from flask import Flask, render_template app = Flask(__name__) @app.route("/") def index(): return render_template('index.html', endpoint='chat') # Twisted from flask.ext.twisted import Twisted twisted = Twisted(app) # SockJS from flask.ext.sockjs import SockJS, broadcast ws = SockJS(twisted) chat = ws.createEndpoint('chat') @chat.on('data') def ws_message(transport, message): broadcast(message, chat.transports()) # Main if __name__ == '__main__': app.run()