Expand description
Client connector to the centralized huddle-server.
huddle’s primary transport is libp2p (mDNS on the LAN, gossipsub
across direct/relayed connections). This module adds a second path:
a WebSocket to a single canonical server that the operator hosts. The
server is reachable only as a Tor v3 onion, so .onion URLs are
dialed through Tor’s local SOCKS5 proxy; plain ws://host:port URLs
(used in tests) are dialed directly.
The server is a dumb ciphertext mover: we hand it the same opaque
huddle wire bytes we would have published on a gossipsub topic,
tagged with the cleartext room id, base64-encoded. It fans them out
to the room’s other members and queues them for offline ones. All
encryption/authentication stays in the layers above — this module
never inspects the payload.
Structs§
- Server
Client - A live connection to the server. Cloneable handle; cloning shares the same underlying socket.
Enums§
- Server
Event - What the connector surfaces to the rest of huddle-core. The caller
drives these into the same path that handles a received gossipsub
message (decode → decrypt →
AppEvent).