Expand description
Running chat-over-mesh service — drives ChatMeshBridge over a live MeshService.
This is the runtime that makes “chat over the mesh” flow. It owns a MeshService and a
ChatMeshBridge, and on its own thread it
- publishes chat envelopes to peers (reliable, on the CHAT port),
- drains inbound CHAT-port datagrams, feeds them through the reliable channel, sends ACKs back,
and either applies each newly-delivered
RelayEnvelopeto the session store or forwards it to the caller (chosen at spawn), and - retransmits unacknowledged frames on a timer.
It keeps a cloneable MeshControl so the desktop can add peers, drive handshakes and read
status on the same mesh the chat loop is running — no second set of tunnels. The lower layers
(ChatMeshBridge, crate::mesh_channel, mesh_datagram) are pure and independently tested;
this module is the thin I/O loop binding them to the live tunnels.
Native-only (the mesh is native-only); WASM chat uses the relay path.
Structs§
- Chat
Mesh Service - A handle to the running chat-over-mesh service.
Type Aliases§
- Incoming
Chat - A chat message received from a peer over the mesh: the sending peer’s id and the envelope.