Server ====== .. automodule:: websockets.server Starting a server ----------------- .. autofunction:: serve(ws_handler, host=None, port=None, *, create_protocol=None, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, loop=None, compression='deflate', origins=None, extensions=None, subprotocols=None, extra_headers=None, process_request=None, select_subprotocol=None, **kwds) :async: .. autofunction:: unix_serve(ws_handler, path, *, create_protocol=None, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, loop=None, compression='deflate', origins=None, extensions=None, subprotocols=None, extra_headers=None, process_request=None, select_subprotocol=None, **kwds) :async: Stopping a server ----------------- .. autoclass:: WebSocketServer .. autoattribute:: sockets .. automethod:: close .. automethod:: wait_closed Using a connection ------------------ .. autoclass:: WebSocketServerProtocol(ws_handler, ws_server, *, ping_interval=20, ping_timeout=20, close_timeout=10, max_size=2 ** 20, max_queue=2 ** 5, read_limit=2 ** 16, write_limit=2 ** 16, loop=None, origins=None, extensions=None, subprotocols=None, extra_headers=None, process_request=None, select_subprotocol=None) .. autoattribute:: local_address .. autoattribute:: remote_address .. autoattribute:: open .. autoattribute:: closed .. attribute:: path Path of the HTTP request. Available once the connection is open. .. attribute:: request_headers HTTP request headers as a :class:`~websockets.http.Headers` instance. Available once the connection is open. .. attribute:: response_headers HTTP response headers as a :class:`~websockets.http.Headers` instance. Available once the connection is open. .. attribute:: subprotocol Subprotocol, if one was negotiated. Available once the connection is open. .. attribute:: close_code WebSocket close code. Available once the connection is closed. .. attribute:: close_reason WebSocket close reason. Available once the connection is closed. .. automethod:: process_request .. automethod:: select_subprotocol .. automethod:: recv .. automethod:: send .. automethod:: ping .. automethod:: pong .. automethod:: close .. automethod:: wait_closed Basic authentication -------------------- .. automodule:: websockets.auth .. autofunction:: basic_auth_protocol_factory .. autoclass:: BasicAuthWebSocketServerProtocol .. automethod:: process_request .. attribute:: username Username of the authenticated user.