Socket Server API
A gevent-based TCP listener that runs LoadDensity action JSON over the wire. The hardened protocol adds 4-byte big-endian length-prefix framing (1 MiB cap), optional TLS, and a shared-secret token; the legacy unauthenticated mode is preserved for downstream tools such as PyBreeze.
start_load_density_socket_server()
def start_load_density_socket_server(
host: str = "localhost",
port: int = 9940,
framed: bool = False,
token: Optional[str] = None,
certfile: Optional[str] = None,
keyfile: Optional[str] = None,
) -> "TCPServer"
Parameters:
Parameter |
Type |
Default |
Description |
|---|---|---|---|
|
|
|
Bind address. |
|
|
|
Bind port. |
|
|
|
Enable length-prefix framing (1 MiB cap). Required for authenticated mode. |
|
|
env / |
Shared secret compared with |
|
|
|
PEM cert and key on disk. Both must be set to enable TLS
( |
Returns: TCPServer — running server instance.
Modes
Mode |
Notes |
|---|---|
|
Single |
|
4-byte big-endian length prefix + JSON body. Safer against partial reads and oversized payloads (1 MiB cap). |
|
Each payload must use
|
|
Adds an |
Sending commands (framed mode)
import json, socket, struct
payload = json.dumps({
"token": "ROTATE_ME",
"command": {"load_density": [["LD_summary", {}]]}
}).encode("utf-8")
sock = socket.create_connection(("127.0.0.1", 9940))
sock.sendall(struct.pack("!I", len(payload)) + payload)
Shutdown
Legacy mode: send the literal string
quit_server.Framed mode with token: send
{"token": "...", "op": "quit"}.
Notes
gevent.monkey.patch_all()is invoked on start-up.The token may be read from
LOAD_DENSITY_SOCKET_TOKENso CI secrets stay out of process arguments.