diff --git a/flask_socketio/__init__.py b/flask_socketio/__init__.py index 21ddc6d6..85f843da 100644 --- a/flask_socketio/__init__.py +++ b/flask_socketio/__init__.py @@ -833,7 +833,7 @@ def rooms(sid=None, namespace=None): return socketio.server.rooms(sid, namespace=namespace) -def disconnect(silent=False): +def disconnect(sid=None, silent=False): """Disconnect the client. This function terminates the connection with the client. As a result of @@ -845,8 +845,10 @@ def receive_message(msg): disconnect() # ... + :param sid: The session id of the client. If not provided, the client is + obtained from the request context. :param silent: this option is deprecated. """ socketio = flask.current_app.extensions['socketio'] - return socketio.server.disconnect(flask.request.sid, + return socketio.server.disconnect(sid or flask.request.sid, namespace=flask.request.namespace)