本文整理汇总了Python中flask_socketio.SocketIO.on_namespace方法的典型用法代码示例。如果您正苦于以下问题:Python SocketIO.on_namespace方法的具体用法?Python SocketIO.on_namespace怎么用?Python SocketIO.on_namespace使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类flask_socketio.SocketIO
的用法示例。
在下文中一共展示了SocketIO.on_namespace方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: SocketIO
# 需要导入模块: from flask_socketio import SocketIO [as 别名]
# 或者: from flask_socketio.SocketIO import on_namespace [as 别名]
from yeti.server import app, rabbitmq
import namespaces
from flask_socketio import SocketIO
import logging
logger = logging.getLogger(__name__)
socketio = SocketIO(app)
socketio.on_namespace(namespaces.Cam('/cam'))
socketio.on_namespace(namespaces.Web('/web'))
@socketio.on_error_default # handles all namespaces without an explicit error handler
def default_error_handler(e):
logger.exception('Socket error occurred')
def send_event_web(event, data):
socketio.emit(event, data, namespace='/web', broadcast=True)
def send_event_cam(event, data):
socketio.emit(event, data, namespace='/cam', broadcast=True)
#start listening to messages from www server
queue = rabbitmq.EventHandler()
queue.receive(send_event_web)
示例2: on_connect
# 需要导入模块: from flask_socketio import SocketIO [as 别名]
# 或者: from flask_socketio.SocketIO import on_namespace [as 别名]
path = '/fanout.%s' % (os.getpid())
def on_connect(self):
logger.info('path = {}, on connect sid = {}, ({}:{})'.format(
self.path, request.sid, request.environ['REMOTE_ADDR'],
request.environ['REMOTE_PORT']))
socketio.send('message: connect OK to all', namespace='/fanout')
socketio.emit('my event', 'my event: connect OK', namespace='/fanout')
session['data'] = request.sid
def on_disconnect(self):
logger.info('path = {}, on disconnect. session data = {}'.format(self.path, session['data']))
def on_message(self, message):
logger.info('path = {}, on message. msg = {}'.format(self.path, message))
def on_my_event(self, message):
logger.info('path = {}, on my event. msg = {}'.format(self.path, message))
socketio.on_namespace(FanoutNamespace('/fanout'))
if __name__ == '__main__':
import sys
port = 8080
if len(sys.argv) >= 2:
port = int(sys.argv[1])
socketio.run(app, debug=True, port=port)
示例3: send
# 需要导入模块: from flask_socketio import SocketIO [as 别名]
# 或者: from flask_socketio.SocketIO import on_namespace [as 别名]
send(data, json=True, broadcast=True)
if not data.get('noackargs'):
return data
def on_my_custom_event(self, data):
emit('my custom response', data)
if not data.get('noackargs'):
return data
def on_other_custom_event(self, data):
global request_event_data
request_event_data = request.event
emit('my custom response', data)
socketio.on_namespace(MyNamespace('/ns'))
class TestSocketIO(unittest.TestCase):
@classmethod
def setUpClass(cls):
pass
@classmethod
def tearDownClass(cls):
cov.stop()
cov.report(include='flask_socketio/*', show_missing=True)
def setUp(self):
pass
示例4: page_not_found
# 需要导入模块: from flask_socketio import SocketIO [as 别名]
# 或者: from flask_socketio.SocketIO import on_namespace [as 别名]
oidc.init_app(app)
celery.conf.update(app.config)
app.logger.setLevel(LOG_LEVEL)
app.logger.addHandler(log_handler)
app.register_blueprint(bp_index)
app.register_blueprint(bp_host_api)
app.register_blueprint(bp_cluster_api)
app.register_blueprint(bp_stat_api)
app.register_blueprint(bp_auth_api)
app.register_blueprint(bp_user_api)
app.register_blueprint(front_rest_user_v2)
@app.errorhandler(404)
def page_not_found(error):
return jsonify(error=404, text=str(error)), 404
@app.errorhandler(500)
def internal_error(error):
return jsonify(error=500, text=str(error)), 500
socketio.on_namespace(CustomSockets('/socket.io'))
if __name__ == '__main__':
socketio.run(app, port=8080, host="0.0.0.0",
debug=os.environ.get('DEBUG', app.config.get("DEBUG", True)))
示例5: on_disconnect
# 需要导入模块: from flask_socketio import SocketIO [as 别名]
# 或者: from flask_socketio.SocketIO import on_namespace [as 别名]
request.sid, request.environ['REMOTE_ADDR'],
request.environ['REMOTE_PORT'])
logger.info(msg)
global total_connection
total_connection += 1
# self.send('ACK', room=request.sid)
pass
def on_disconnect(self):
logger.info('disconnect sid = {}'.format(request.sid))
global total_connection
total_connection -= 1
pass
def on_message(self, message):
pass
def on_my_event(self, message):
pass
socketio.on_namespace(FanoutNamespace(ns_name))
if __name__ == '__main__':
import sys
port = 8080
if len(sys.argv) >= 2:
port = int(sys.argv[1])
socketio.run(app, debug=False, port=port, host='0.0.0.0')
示例6: on_my_room_event
# 需要导入模块: from flask_socketio import SocketIO [as 别名]
# 或者: from flask_socketio.SocketIO import on_namespace [as 别名]
def on_my_room_event(self, message):
session['receive_count'] = session.get('receive_count', 0) + 1
emit('my_response',
{'data': message['data'], 'count': session['receive_count']},
room=message['room'])
def on_disconnect_request(self):
session['receive_count'] = session.get('receive_count', 0) + 1
emit('my_response',
{'data': 'Disconnected!', 'count': session['receive_count']})
disconnect()
def on_my_ping(self):
emit('my_pong')
def on_connect(self):
global thread
if thread is None:
thread = socketio.start_background_task(target=background_thread)
emit('my_response', {'data': 'Connected', 'count': 0})
def on_disconnect(self):
print('Client disconnected', request.sid)
socketio.on_namespace(MyNamespace('/test'))
if __name__ == '__main__':
socketio.run(app, debug=True)