pub trait PeerConnectionObserver: Send + Sync {
Show 19 methods
// Required methods
fn on_signaling_change(&self, new_state: SignalingState);
fn on_add_stream(&self, stream: SharedPtr<MediaStream>);
fn on_remove_stream(&self, stream: SharedPtr<MediaStream>);
fn on_data_channel(&self, data_channel: SharedPtr<DataChannel>);
fn on_renegotiation_needed(&self);
fn on_negotiation_needed_event(&self, event: u32);
fn on_ice_connection_change(&self, new_state: IceConnectionState);
fn on_standardized_ice_connection_change(
&self,
new_state: IceConnectionState,
);
fn on_connection_change(&self, new_state: PeerConnectionState);
fn on_ice_gathering_change(&self, new_state: IceGatheringState);
fn on_ice_candidate(&self, candidate: SharedPtr<IceCandidate>);
fn on_ice_candidate_error(
&self,
address: String,
port: i32,
url: String,
error_code: i32,
error_text: String,
);
fn on_ice_candidates_removed(&self, removed: Vec<SharedPtr<Candidate>>);
fn on_ice_connection_receiving_change(&self, receiving: bool);
fn on_ice_selected_candidate_pair_changed(
&self,
event: CandidatePairChangeEvent,
);
fn on_add_track(
&self,
receiver: SharedPtr<RtpReceiver>,
streams: Vec<SharedPtr<MediaStream>>,
);
fn on_track(&self, transceiver: SharedPtr<RtpTransceiver>);
fn on_remove_track(&self, receiver: SharedPtr<RtpReceiver>);
fn on_interesting_usage(&self, usage_pattern: i32);
}Required Methods§
fn on_signaling_change(&self, new_state: SignalingState)
fn on_add_stream(&self, stream: SharedPtr<MediaStream>)
fn on_remove_stream(&self, stream: SharedPtr<MediaStream>)
fn on_data_channel(&self, data_channel: SharedPtr<DataChannel>)
fn on_renegotiation_needed(&self)
fn on_negotiation_needed_event(&self, event: u32)
fn on_ice_connection_change(&self, new_state: IceConnectionState)
fn on_standardized_ice_connection_change(&self, new_state: IceConnectionState)
fn on_connection_change(&self, new_state: PeerConnectionState)
fn on_ice_gathering_change(&self, new_state: IceGatheringState)
fn on_ice_candidate(&self, candidate: SharedPtr<IceCandidate>)
fn on_ice_candidate_error( &self, address: String, port: i32, url: String, error_code: i32, error_text: String, )
fn on_ice_candidates_removed(&self, removed: Vec<SharedPtr<Candidate>>)
fn on_ice_connection_receiving_change(&self, receiving: bool)
fn on_ice_selected_candidate_pair_changed( &self, event: CandidatePairChangeEvent, )
fn on_add_track( &self, receiver: SharedPtr<RtpReceiver>, streams: Vec<SharedPtr<MediaStream>>, )
fn on_track(&self, transceiver: SharedPtr<RtpTransceiver>)
fn on_remove_track(&self, receiver: SharedPtr<RtpReceiver>)
fn on_interesting_usage(&self, usage_pattern: i32)
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".