setSpeakerphoneOn method

Future<NEResult> setSpeakerphoneOn(
  1. bool enable
)

Implementation

Future<NEResult> setSpeakerphoneOn(bool enable) async {
  CallKitUILog.i(_tag, 'setSpeakerphoneOn enable = $enable');
  if (_isDesktopRuntime && enable) {
    await _applyPendingDesktopAudioPlaybackDeviceIfNeeded();
  }
  final result = await NECallEngine.instance.setSpeakerphoneOn(enable);
  if (result.code == 0) {
    final actualEnabled = _isDesktopRuntime
        ? await NECallEngine.instance.isSpeakerphoneOn()
        : null;
    CallState.instance.isEnableSpeaker = resolveSpeakerphoneEnabledState(
      isDesktopRuntime: _isDesktopRuntime,
      requestedEnabled: enable,
      actualEnabled: actualEnabled,
    );
  } else {
    CallKitUILog.i(
      _tag,
      'setSpeakerphoneOn failed code = ${result.code}, msg = ${result.msg}',
    );
  }
  _syncCallStateToNative();
  return NEResult(code: result.code, message: result.msg);
}