This seems like a good enough reason to me to learn Go.
Ideally this is useful for someone besides me.
./zcam-controller [options] start starts the camera recording
./zcam-controller [options] stop starts the camera recording
./zcam-controller [options] download downloads the files currently on the device’s disk to a location you specify with the
-o flag. An optional
--delete at the end will then delete the files from the camera post-copy.
--url flag is required, and it expects either an IP address or a resolvable hostname for the z-cam.
Putting it all together,
./zcam-controller -u 192.168.1.128 -o "/tmp" download --delete is what a command looks like.
If you’re going to call this from a Stream Deck, you’re in for a “fun” time. It doesn’t support arguments to binaries, so you get to wrap it with an executable shell script–then set the System -> Open action to call that shell script instead of the binary directly.