addPeerEvents method Null safety
- PeerConnection instanceClass,
- RTCPeerConnection peer
Emits peer events.
instanceClass - PeerConnection instance. RTCPeerConnection peer - Peer instance. PeerConnection#track PeerConnection#connectionStateChange
Implementation
void addPeerEvents(PeerConnection instanceClass, RTCPeerConnection peer) {
peer.onTrack = (event) async {
_logger.i('New track from peer.');
_logger.d('Track event value: $event');
// Listen for remote tracks events for resolving pending addRemoteTrack calls.
// TO DO
// if (event.transceiver != null) {}
// ;
instanceClass.emit(webRTCEvents['track'], this, event.streams[0]);
};
if (peer.connectionState != null) {
peer.onConnectionState = (event) {
_logger.i('Peer connection state change: ${peer.connectionState}');
instanceClass.emit(webRTCEvents['connectionStateChange'], this,
peer.iceConnectionState);
};
} else {
peer.onIceConnectionState = (RTCIceConnectionState state) {
_logger
.i('Peer ICE connection state change: ${peer.iceConnectionState}');
instanceClass.emit(webRTCEvents['connectionStateChange'], this,
peer.iceConnectionState);
};
}
// No renegotationNeeded
peer.onRenegotiationNeeded = () async {};
}