# @caprid/relay-websocket

URL: https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/readme/

`@caprid/relay-websocket`: the Relay SDK's transport adapter for QMux over WebSocket. It carries MOQT on QMux
(draft-ietf-quic-qmux, wire format `qmux-01`) inside one WebSocket connection over TCP, the relay's fallback for
networks that block UDP and browsers without a usable `WebTransport`. It follows the transport adapter contract
(`spec/transport-adapter.md`), with the deviations the contract records for it.

- [createWebSocketTransport](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/functions/createwebsockettransport/): always WebSocket.
- [withWebSocketFallback](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/functions/withwebsocketfallback/): WebTransport first, racing a WebSocket once it has had a 250 ms head start.

Pass either factory as the SDK's `createTransport`.

## Classes

- [WebSocketSessionError](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/classes/websocketsessionerror/)

## Interfaces

- [CloseInfo](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/interfaces/closeinfo/)
- [FallbackConnection](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/interfaces/fallbackconnection/)
- [FallbackTransport](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/interfaces/fallbacktransport/)
- [WebSocketConnection](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/interfaces/websocketconnection/)
- [WebSocketFallbackOptions](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/interfaces/websocketfallbackoptions/)
- [WebSocketMoqtTransport](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/interfaces/websocketmoqttransport/)

## Type Aliases

- [FallbackCarrier](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/type-aliases/fallbackcarrier/)
- [FallbackTransportFactory](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/type-aliases/fallbacktransportfactory/)
- [WebSocketTransportFactory](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/type-aliases/websockettransportfactory/)

## Functions

- [createWebSocketTransport](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/functions/createwebsockettransport/)
- [withWebSocketFallback](https://www.caprid.com/docs/reference/typescript/caprid/relay-websocket/functions/withwebsocketfallback/)
