pub trait WebRtcSignaller: Send {
// Required methods
fn on_ice_candidate(
&self,
controller: &WebRtcController,
candidate: IceCandidate,
);
fn on_negotiation_needed(&self, controller: &WebRtcController);
fn close(&self);
fn on_add_stream(&self, stream: &MediaStreamId, ty: MediaStreamType);
// Provided methods
fn update_signaling_state(&self, _: SignalingState) { ... }
fn update_gathering_state(&self, _: GatheringState) { ... }
fn update_ice_connection_state(&self, _: IceConnectionState) { ... }
fn on_data_channel_event(
&self,
_: DataChannelId,
_: DataChannelEvent,
_: &WebRtcController,
) { ... }
}