run method

  1. @override
Future<void> run()
override

Runs this command.

The return value is wrapped in a Future if necessary and returned by CommandRunner.runCommand.

Implementation

@override
Future<void> run() async {
  await initializeObs();

  final inputName = argResults!['inputName'] as String?;

  final inputUuid = argResults!['inputUuid'] as String?;

  final inputMuted = argResults!['mute'] as bool;

  if (inputName == null && inputUuid == null) {
    throw UsageException(
      'One of inputName or inputUuid must be provided.',
      usage,
    );
  }

  await obs.inputs.setInputMute(
    inputName: inputName,
    inputUuid: inputUuid,
    inputMuted: inputMuted,
  );

  obs.close();
}