initStats method Null safety

dynamic initStats()

Initialize the statistics monitoring of the RTCPeerConnection. It will be emitted every second.

import 'package:flutter_webrtc/flutter_webrtc.dart';
import 'package:millicast_flutter_sdk/millicast_flutter_sdk.dart';

//Initialize and connect your Publisher
var millicastPublish = Publish(streamName, tokenGenerator);
await millicastPublish.connect(options);

//Initialize get stats
millicastPublish.webRTCPeer.initStats();

//Capture new stats from event every second
millicastPublish.webRTCPeer.on('stats', (stats) => {
  print('Stats from event: ', stats)
});
import 'package:flutter_webrtc/flutter_webrtc.dart';
import 'package:millicast_flutter_sdk/millicast_flutter_sdk.dart';

//Initialize and connect your Viewer
var millicastView = View(streamName, tokenGenerator);
await millicastView.connect();

//Initialize get stats
millicastView.webRTCPeer.initStats();

//Capture new stats from event every second
millicastView.webRTCPeer.on('stats', (stats) => {
  print('Stats from event: ', stats);
});

Implementation

initStats() {
  if (peerConnectionStats != null) {
    _logger.w('Cannot init peer stats: Already initialized');
  } else if (peer != null) {
    peerConnectionStats = PeerConnectionStats(peer!);
    peerConnectionStats?.init();
    reemit(peerConnectionStats!, this, [peerConnectionStatsEvents['stats']]);
  } else {
    _logger.w('Cannot init peer stats: RTCPeerConnection not initialized');
  }
}