setDesktopAudioRecordingDevice method

Future<NEResult> setDesktopAudioRecordingDevice(
  1. String deviceId
)

Implementation

Future<NEResult> setDesktopAudioRecordingDevice(String deviceId) async {
  if (!_isDesktopRuntime) {
    return NEResult(code: -1, message: 'desktop runtime required');
  }
  if (deviceId.isEmpty) {
    return NEResult(code: -1, message: 'device id required');
  }
  CallKitUILog.i(_tag, 'setDesktopAudioRecordingDevice deviceId = $deviceId');
  if (!shouldApplyDesktopAudioRecordingDeviceImmediately(
    isDesktopRuntime: _isDesktopRuntime,
    isMicrophoneMute: CallState.instance.isMicrophoneMute,
  )) {
    _pendingDesktopAudioRecordingDeviceId = deviceId;
    return NEResult(code: 0, message: 'success');
  }
  final result =
      await NECallEngine.instance.setAudioRecordingDevice(deviceId);
  if (result.code == 0) {
    _pendingDesktopAudioRecordingDeviceId = null;
  }
  return NEResult(code: result.code, message: result.msg);
}