onNetworkDetectionResult method

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

@detail callback @author hanchenchen.c @brief 通话前网络探测结果。
成功调用 startNetworkDetection{@link #RTCEngine#startNetworkDetection} 接口开始探测后,会在 3s 内首次收到该回调,之后每 2s 收到一次该回调。 @param type 探测网络类型为上行/下行 @param quality 探测网络的质量,参看 NetworkQuality{@link #NetworkQuality}。 @param rtt 探测网络的 RTT,单位:ms @param lostRate 探测网络的丢包率 @param bitrate 探测网络的带宽,单位:kbps @param jitter 探测网络的抖动,单位:ms

Implementation

FutureOr<void> onNetworkDetectionResult(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.android_to_code($p_a
          .NetworkDetectionLinkType.values
          .firstWhere((t) => t.$value == type || t.name == type)),
      t_NetworkQuality.android_to_code($p_a.NetworkQuality.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);
}