WebsocketAction
Describes how a single protocol step addresses the relay server over a WebSocket transport.
A NetworkAction carries no transport detail of its own; this interface adds the WebSocket-specific routing that SilentShardWebsocketClient needs to open a connection and, where required, issue an HTTP request for the same step.
The default client consumes these values verbatim — appending connectionUrl to the configured base URL and sending protocol as the WebSocket subprotocol. A custom SilentShardWebsocketClient subclass may read them, rewrite them, or ignore them in favour of its own routing.