|
A11 (C++ runtime)
Native C++ implementation of the A11 action and streaming runtime
|
WireStream transport over a WebRTC data channel (libdatachannel). More...
#include <cstddef>#include <cstdint>#include <functional>#include <memory>#include <optional>#include <string>#include <string_view>#include <utility>#include <vector>#include <absl/status/status.h>#include <absl/status/statusor.h>#include "a11/concurrency/future.h"#include "a11/net/channel_wire_stream.h"#include "a11/net/signalling.h"#include "a11/net/wire_stream.h"Go to the source code of this file.
Classes | |
| struct | a11::net::TurnServer |
| Address and credentials for a TURN relay used during ICE. More... | |
| struct | a11::net::WebRtcConfiguration |
| ICE, fragmentation, and binding settings for a WebRTC connection. More... | |
| class | a11::net::WebRtcWireStream |
| A WireStream that carries A11 traffic over a WebRTC data channel. More... | |
| class | a11::net::WebRtcWireServer |
| Accepts incoming WebRTC peer connections under a fixed identity. More... | |
Namespaces | |
| namespace | rtc |
| namespace | a11 |
| namespace | a11::net |
Typedefs | |
| using | a11::net::OnWebRtcStream = std::function< a11::Task(std::shared_ptr< WebRtcWireStream >)> |
| Callback invoked with each newly negotiated peer WireStream. | |
Enumerations | |
| enum class | a11::net::TurnRelayType { a11::net::kUdp , a11::net::kTcp , a11::net::kTls } |
| Transport used to reach a TURN relay server. More... | |
WireStream transport over a WebRTC data channel (libdatachannel).
A WebRtcWireStream carries A11 WireMessage traffic over a WebRTC SCTP data channel, enabling peer-to-peer connections including NAT traversal via STUN and TURN. Pick it when peers must reach each other directly without a shared server on the data path. It relies on a signalling channel (see signalling.h) to exchange SDP offers/answers and ICE candidates before the peer connection is established. Large logical messages are fragmented by the ChannelWireStream layer before reaching SCTP. Delivery carries no global ordering guarantee but is synchronised on closure – a reader observes every delivered message before the stream completes.