SignallingInterface
SignallingInterface
#include <icy/webrtc/signalling.h>class SignallingInterfaceDefined in src/webrtc/include/icy/webrtc/signalling.h:38
Subclassed by:
SympleServerSignaller,SympleSignaller,WebSocketSignaller
Transport-agnostic signalling interface for WebRTC session setup.
Implementations handle the exchange of SDP offers/answers and ICE candidates between peers over whatever transport is available: Symple, plain WebSocket, REST, MQTT, carrier pigeon, etc.
PeerSession takes a reference to this interface. Implement it to plug in your own signalling backend.
The three message categories:
SDP: offer/answer exchange (the session description)
Candidate: trickle ICE candidates
Control: call lifecycle (init, accept, reject, hangup)
List of all members
| Name | Kind | Owner |
|---|---|---|
SdpReceived | variable | Declared here |
CandidateReceived | variable | Declared here |
ControlReceived | variable | Declared here |
~SignallingInterface | function | Declared here |
sendSdp | function | Declared here |
sendCandidate | function | Declared here |
sendControl | function | Declared here |
Public Attributes
| Return | Name | Description |
|---|---|---|
ThreadSignal< void(const std::string &, const std::string &, const std::string &)> | SdpReceived | Fires when an SDP offer or answer arrives from a remote peer. Parameters: peerId, type ("offer"/"answer"), sdp. |
ThreadSignal< void(const std::string &, const std::string &, const std::string &)> | CandidateReceived | Fires when an ICE candidate arrives from a remote peer. Parameters: peerId, candidate, mid. |
ThreadSignal< void(const std::string &, const std::string &, const std::string &)> | ControlReceived | Fires when a control message arrives from a remote peer. Parameters: peerId, type ("init"/"accept"/"reject"/"hangup"), reason. |
SdpReceived
ThreadSignal< void(const std::string &, const std::string &, const std::string &)> SdpReceivedDefined in src/webrtc/include/icy/webrtc/signalling.h:77
Fires when an SDP offer or answer arrives from a remote peer. Parameters: peerId, type ("offer"/"answer"), sdp.
CandidateReceived
ThreadSignal< void(const std::string &, const std::string &, const std::string &)> CandidateReceivedDefined in src/webrtc/include/icy/webrtc/signalling.h:81
Fires when an ICE candidate arrives from a remote peer. Parameters: peerId, candidate, mid.
ControlReceived
ThreadSignal< void(const std::string &, const std::string &, const std::string &)> ControlReceivedDefined in src/webrtc/include/icy/webrtc/signalling.h:85
Fires when a control message arrives from a remote peer. Parameters: peerId, type ("init"/"accept"/"reject"/"hangup"), reason.
Public Methods
| Return | Name | Description |
|---|---|---|
void | sendSdp virtual | Send an SDP offer or answer to the remote peer. |
void | sendCandidate virtual | Send an ICE candidate to the remote peer. |
void | sendControl virtual | Send a control message to the remote peer. |
sendSdp
virtual
virtual void sendSdp(const std::string & peerId, const std::string & type, const std::string & sdp)Defined in src/webrtc/include/icy/webrtc/signalling.h:51
Send an SDP offer or answer to the remote peer.
Parameters
peerIdRemote peer identifier.type"offer" or "answer".sdpThe SDP string.
Reimplemented by
sendCandidate
virtual
virtual void sendCandidate(const std::string & peerId, const std::string & candidate, const std::string & mid)Defined in src/webrtc/include/icy/webrtc/signalling.h:59
Send an ICE candidate to the remote peer.
Parameters
peerIdRemote peer identifier.candidateThe candidate string (from RTCIceCandidate).midThe sdpMid value.
Reimplemented by
sendControl
virtual
virtual void sendControl(const std::string & peerId, const std::string & type, const std::string & reason = {})Defined in src/webrtc/include/icy/webrtc/signalling.h:67
Send a control message to the remote peer.
Parameters
peerIdRemote peer identifier.typeControl type: "init", "accept", "reject", "hangup".reasonOptional reason string (for reject/hangup).
