当前位置: 首页>>代码示例>>Python>>正文


Python flask_socketio.SocketIO类代码示例

本文整理汇总了Python中flask_socketio.SocketIO的典型用法代码示例。如果您正苦于以下问题:Python SocketIO类的具体用法?Python SocketIO怎么用?Python SocketIO使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了SocketIO类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: run_flask

def run_flask():
    root_dir = os.path.join(os.getcwd(), 'web')
    app = Flask(__name__, static_folder=root_dir)
    app.use_reloader = False
    app.debug = False
    app.config["SECRET_KEY"] = "OpenPoGoBot"
    socketio = SocketIO(app, logging=False, engineio_logger=False)

    logging_buffer = []

    @app.route("/")
    def index():
        return app.send_static_file("index.html")

    @app.route('/<path:path>')
    def static_proxy(path):
        return app.send_static_file(path)

    @manager.on("logging")
    def logging_event(event_name, output, color):
        line = {"output": output, "color": color}
        logging_buffer.append(line)
        socketio.emit("logging", [line], namespace="/event")

    @socketio.on("connect", namespace="/event")
    def connect():
        emit("logging", logging_buffer, namespace="/event")
        logger.log("Client connected", "yellow", fire_event=False)

    @socketio.on("disconnect", namespace="/event")
    def disconnect():
        logger.log("Client disconnected", "yellow", fire_event=False)

    socketio.run(app, host="0.0.0.0", port=8000, debug=False, use_reloader=False, log_output=False)
开发者ID:prophaner,项目名称:OpenPoGoBot,代码行数:34,代码来源:__init__.py

示例2: PServer

class PServer():
    __metaclass__ = Singleton

    def __init__(self):
        # Flask Elements
        self.IO_SPACE = "/io"

        # self.test = "[TEST1]"

        self.app = Flask(__name__)
        self.app.config['DEBUG'] = False
        self.app.config['SECRET_KEY'] = "supersecret";

        # self.socketio = SocketIO(self.app)
        self.socketio = SocketIO(self.app, async_mode='threading')

    # LIttle spleeper
    def sleep_state(voice):
        time.sleep(SLEEP_TIME)

        self.send("sleep")
        logger.debug("WORKS")

        voice.stop_all()
        self.is_sleeping = True

    def send(self, event, data=""):
        lock.acquire(True)
        self.socketio.emit(event, data, namespace="/io")
        lock.release()


    def start(self):
        print "[STARTING SERVERS]"
开发者ID:Techblogogy,项目名称:magic-mirror-base,代码行数:34,代码来源:server.py

示例3: main

def main(**kwargs):
    opt = parse_cmdline()
    app = Flask('supcast.wsapp')
    app.config['SECRET_KEY'] = 'TODO: some secret?'
    socketio = SocketIO(app, async_mode='eventlet')
    eventlet.spawn(redis_listener, socketio)
    supcast.config.set_redis_url(opt.redis)
    socketio.run(app, host=opt.host, port=opt.port, **kwargs)
开发者ID:dvarrazzo,项目名称:suponoff,代码行数:8,代码来源:wsapp.py

示例4: socket_emit

def socket_emit(meta=None, event='others'):
    try:
        socketio = SocketIO(message_queue=current_app.config['SOCKETIO_REDIS_URL'])
        socketio.emit(event, meta, namespace='/deyunio')
    except Exception as e:
        logger.warning('error in loading sitestatus ' + str(e))
        return {'failed': e}
    return {("sent " + str(event)) : meta}
开发者ID:rtx3,项目名称:Salt-MWDS,代码行数:8,代码来源:celery_task_socket.py

示例5: main

def main():
    global socketio
    
    signal.signal(signal.SIGINT, signal_handler)
    
    print('Flask-SocketIO running...')
    app = Flask(__name__)
#    c = SimpleCache()
#    c.clear()
    Bootstrap(app)
    app.debug = False    
    socketio = SocketIO(app)

    ser = myComm.mySerial()
    net = myComm.myNet()
    
    @app.before_first_request
    def initialize():
        print('Called only once, when the first request comes in')
        ser.onMsg = onSerialMsg
#        ser.connect('COM3')
        ser.connect('COM5')
#        ser.connect('/dev/ttyACM0')
        net.onMsg = onNetMsg
#        net.connect('192.168.1.91', 12345)
        net.connect('10.0.0.4', 12345)
    
    @app.route('/')
    def index():
        print('Rendering index.html')
        return render_template('index.html')
    
    @app.route('/2')
    def index2():
        return render_template('index2.html')

    @app.route('/3')
    def index3():
        return render_template('index3.html')

    @socketio.on('ledACtrl', namespace='/test')
    def ledACtrl(message):
        print(message['led'])
        if message['led']:
            ser.sendMsg('l1')
        else:
            ser.sendMsg('l0')
    
    @socketio.on('ledRCtrl', namespace='/test')
    def ledRCtrl(message):
        print(message['led'])
        if message['led']:
            net.sendMsg('l1')
        else:
            net.sendMsg('l0')

    socketio.run(app, host = '0.0.0.0', port = 5001)
开发者ID:hsmptg,项目名称:SocketIO_test,代码行数:57,代码来源:SocketIO_test.py

示例6: new_server

def new_server(viewer_queue, stop_page, port, secret_key):
    # create server
    app = Flask(__name__, static_url_path='/static')
    app.config['SECRET_KEY'] = secret_key
    # must be 'threading' for broadcast emitting
    socketio = SocketIO(app, async_mode='threading',
                        logger=False, engineio_logger=False)

    # rooting
    @app.route('/')
    def __index():
        logger.info('Render viewer page')
        return render_template('index.html', script="index.js")

    if stop_page:
        @app.route('/stop')
        def __stop():
            socketio.stop()
            logger.info('Server stop request')
            return 'This server is stopped'

    @socketio.on('connect', namespace=IO_NAMESPACE)
    def __on_viewer_connect():
        logger.info('New viewer connection is established')

    @socketio.on('disconnect', namespace=IO_NAMESPACE)
    def __on_viewer_disconnect():
        logger.info('Viewer connection is closed')

    @socketio.on('update', namespace=IO_NAMESPACE)
    def __on_update():
        logger.info('Image updating request is received')
        # get all of current data
        emit_data = buffering_thread.get_data_all()
        # emit all
        logger.debug('Emit for update all')
        emit('update', emit_data, namespace=IO_NAMESPACE)

    def update_event(tab, name, data):
        emit_data = [[tab, name, data]]  # single data
        # broadcast emit
        logger.debug('Broadcast emit for update (tab: %s, name: %s)' %
                     (str(tab), str(name)))
        socketio.emit('update', emit_data, namespace=IO_NAMESPACE)

    # create image updating thread
    if viewer_queue:
        logger.info('Start image buffering thread')
        buffering_thread = ImageBufferingThread(viewer_queue)
        buffering_thread.daemon = True
        buffering_thread.start()
        buffering_thread.register_update_event_func(update_event)

    # start server
    logger.info('Start server on port %d' % port)
    socketio.run(app, host='0.0.0.0', port=port, debug=False, log_output=False)
    logger.info('Stop server on port %d' % port)
开发者ID:takiyu,项目名称:image_servers,代码行数:57,代码来源:app.py

示例7: simulate

def simulate(restaurant,sid):
    simsocket = SocketIO(message_queue=REDIS_URL)
    layout = json.loads(restaurant)
    print("making rdq here")
    rdq = RestaurantDayQueue(sid)
    print("rdq has been made")
    r = Restaurant("Sophie's Kitchen", layout["equipment"], layout["tables"], layout["staff"], day_log=rdq, verbose=False)
    r.simulate(days=int(layout["days"]))
    report = r.ledger.generate_final_report()
    simsocket.emit("sim_report", report, room=sid)
开发者ID:hrc2da,项目名称:sknightmare,代码行数:10,代码来源:flask_app.py

示例8: RestaurantDayQueue

class RestaurantDayQueue(Queue):
    def __init__(self,room):
        self.room = room
        self.socketio = SocketIO(message_queue=REDIS_URL)
        super().__init__()
    def put(self, report, block=True, timeout=None):
        self.socketio.emit('day_report', report.get_report(),room=self.room)
        #print(report.get_report())
        super().put(report, block, timeout)
        self.socketio.sleep(0)
开发者ID:hrc2da,项目名称:sknightmare,代码行数:10,代码来源:flask_app.py

示例9: front

def front(port, working_dir, redis_host):
    """start the frontend server"""
    import eventlet
    eventlet.monkey_patch() # for flask_socketio message queue support
    from flask_socketio import SocketIO
    static = os.path.abspath(os.path.join(working_dir, 'static'))
    templs = os.path.abspath(os.path.join(working_dir, 'templates'))
    app = front_app(static_folder=static, template_folder=templs)
    socketio = SocketIO(app, message_queue=redis_host)
    socketio.run(app, host='0.0.0.0', port=port) # doesn't seem to work if debug=True
开发者ID:frnsys,项目名称:brood,代码行数:10,代码来源:cli.py

示例10: run_socket_server

def run_socket_server():
    app = Flask(__name__)
    app.config["SECRET_KEY"] = "OpenPoGoBotSocket"
    socketio = SocketIO(app, logging=False, engineio_logger=False, json=myjson)

    state = {}

    botevents.register_bot_events(socketio, state)
    uievents.register_ui_events(socketio, state)

    socketio.run(app, host="0.0.0.0", port=8000, debug=False, use_reloader=False, log_output=False)
开发者ID:hanseartic,项目名称:OpenPoGoBot,代码行数:11,代码来源:__init__.py

示例11: SocketsHandler

class SocketsHandler(logging.Handler):
    def emit(self, record):
        if not hasattr(self, 'socketio'):
            self.socketio = SocketIO(message_queue='redis://localhost:6379')
        try:
            # format: 'CHAN:DATA'
            chan, datastr = record.getMessage().split(':', 1)
            self.socketio.emit(chan, json.loads(datastr), namespace='/simulation')
        except (KeyboardInterrupt, SystemExit):
            raise
        except:
            self.handleError(record)
开发者ID:MaxwellRebo,项目名称:hosny,代码行数:12,代码来源:handlers.py

示例12: self_test

def self_test(x=16, y=16,url=None):
    x = int(x)
    y = int(y)
    res = x + y
    context = {"id": "test", "x": x, "y": y}
    result = "add((x){}, (y){})".format(context['x'], context['y'])
    goto = "{}".format(context['id'])
    time.sleep(10)
    meta = json.dumps({'result':result, 'goto':goto})
    #post(url, json=meta)
    socketio = SocketIO(message_queue='redis://localhost:6379/0')
    socketio.emit('connect', meta, namespace='/deyunio')
    return meta
开发者ID:rtx3,项目名称:Salt-MWDS,代码行数:13,代码来源:celery_task_socket.py

示例13: run_socket_server

def run_socket_server():
    app = Flask(__name__)
    app.config["SECRET_KEY"] = "OpenPoGoBotSocket"
    socketio = SocketIO(app, logging=False, engineio_logger=False, json=myjson)

    @app.route("/")
    def redirect_online():
        return redirect("http://openpogoui.nicontoso.eu")

    state = {}

    botevents.register_bot_events(socketio, state)
    uievents.register_ui_events(socketio, state)

    socketio.run(app, host="0.0.0.0", port=8000, debug=False, use_reloader=False, log_output=False)
开发者ID:AlexDevelop,项目名称:OpenPoGoBot,代码行数:15,代码来源:__init__.py

示例14: main

def main():
    app = flask.Flask('espelhos_sonoros')
    app.config.from_object('config.Config')

    socketio = SocketIO(app, async_mode='threading')
    db = SQLAlchemy(app)

    espelhos_sonoros(app, socketio, db)

    app.logger.info('Started server.')

    if not app.config['DEBUG']:
        SSLify(app)

    socketio.run(app, host=app.config['HOST'], port=app.config['PORT'])
开发者ID:espelhos-sonoros,项目名称:server,代码行数:15,代码来源:run.py

示例15: Server

class Server(threading.Thread):

    def __init__(self, jukebox):
        threading.Thread.__init__(self)
        self.jukebox = jukebox


    def run(self):
        self.app = Flask(__name__)
        self.app.config['SECRET_KEY'] = 'secret!'
        self.socketio = SocketIO(self.app)

        @self.socketio.on('connect')
        def handle_connect():
            emit('newSong', self.jukebox.current_song_name)

        @self.socketio.on('playback')
        def handle_message(playback):
            if playback == "pause":
                self.jukebox.pause()
            elif playback == "play":
                self.jukebox.play()
            elif playback == "next":
                self.jukebox.play_next_song()
                return self.jukebox.current_song_name
            print(playback)

        @self.socketio.on('addToQueue')
        def handle_add_to_queue(song):
        	if self.jukebox.add_to_queue(song):
			return True
		else:
			return False

        @self.app.route("/")
        def index():
            return render_template("queue.html")

        @self.app.route("/playstyring")
	@requires_auth
        def control():
            return render_template("index.html")

        self.socketio.run(self.app, host='0.0.0.0', port=80)

    def new_song(self, song):
        with self.app.test_request_context('/'):
            self.socketio.send('newSong', song)
开发者ID:PythonNeo,项目名称:Jukebox,代码行数:48,代码来源:webserver.py


注:本文中的flask_socketio.SocketIO类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。