rtcEngine$onNetworkDetectionResult$quality$rtt$lostRate$bitrate$jitter method

FutureOr<void> rtcEngine$onNetworkDetectionResult$quality$rtt$lostRate$bitrate$jitter(
  1. dynamic engine,
  2. dynamic type,
  3. dynamic quality,
  4. dynamic rtt,
  5. dynamic lostRate,
  6. dynamic bitrate,
  7. dynamic jitter,
)
override

@detail callback @author hanchenchen.c @brief Callback of pre-call network detection result.
After successfully calling startNetworkDetection:uplinkBandwidth:downlink:downlinkBandwidth:{@link #ByteRTCEngine#startNetworkDetection:uplinkBandwidth:downlink:downlinkBandwidth}, you will receive this callback for the first time in 3s and every 2s thereafter. @param engine ByteRTCEngine instance. @param type Identifies the network type as uplink/downlink. @param quality Network quality, see ByteRTCNetworkQuality{@link #ByteRTCNetworkQuality}. @param rtt Network RTT in ms. @param lostRate Packet loss rate. @param bitrate Network bandwidth in kbps. @param jitter Network jitter in ms

Implementation

FutureOr<void>
    rtcEngine$onNetworkDetectionResult$quality$rtt$lostRate$bitrate$jitter(
        dynamic engine,
        dynamic type,
        dynamic quality,
        dynamic rtt,
        dynamic lostRate,
        dynamic bitrate,
        dynamic jitter) async {
  if ($instance == null || $instance is! IRTCEngineEventHandler) {
    return;
  }
  return ($instance as IRTCEngineEventHandler).onNetworkDetectionResult?.call(
      t_NetworkDetectionLinkType.ios_to_code($p_i
          .ByteRTCNetworkDetectionLinkType.values
          .firstWhere((t) => t.$value == type || t.name == type)),
      t_NetworkQuality.ios_to_code($p_i.ByteRTCNetworkQuality.values
          .firstWhere((t) => t.$value == quality || t.name == quality)),
      int.tryParse(rtt.toString()) ?? 0,
      double.tryParse(lostRate.toString()) ?? 0,
      int.tryParse(bitrate.toString()) ?? 0,
      int.tryParse(jitter.toString()) ?? 0);
}