run method

  1. @override
void run()
override

Runs this command.

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

Implementation

@override
void run() async {
  await initializeOnvif();

  try {
    final profileToken = argResults!['profile-token'];

    await ptz.gotoPreset(
      profileToken,
      presetToken: argResults!['preset-token'],
      speed: argResults?['pan-tilt-x'] != null &&
              argResults?['pan-tilt-y'] != null
          ? PtzSpeed(
              panTilt: Vector2D.fromString(
                  x: argResults!['pan-tilt-x'], y: argResults!['pan-tilt-y']),
              zoom: argResults?['zoom'] != null
                  ? Vector1D.fromString(x: argResults!['zoom'])
                  : null)
          : null,
    );
  } on DioException catch (err) {
    throw UsageException('API usage error:', err.usage);
  }
}