zmcontrol.pl(8)

zmcontrol.pl(8) zoneminder zmcontrol.pl(8)

NAME

zmcontrol.pl - ZoneMinder control script

SYNOPSIS

 zmcontrol.pl --id {monitor_id} [--command={command}] [various options]
 zmcontrol.pl --protocol {module} --address {addr} [--device {dev}] --command {cmd}

DESCRIPTION

ZoneMinder camera control script. Operates in two modes:

Monitor mode (--id): Connects to the control daemon for the given monitor, or starts the daemon if run without --command. Requires a running ZoneMinder instance with database access.

Direct protocol mode (--protocol): Loads a ZoneMinder::Control module directly and executes a single command without requiring database access or a running ZoneMinder instance. Useful for testing control modules.

OPTIONS

 --id [ monitor_id ] - Monitor ID (monitor mode)
 --protocol [ name ] - Control module name, e.g. ONVIF (direct mode)
 --address [ addr ]  - ControlAddress, e.g. user:pass@host:port (direct mode)
 --device [ dev ]    - ControlDevice / profile token (direct mode)
 --command [ cmd ]   - Command to execute (e.g. moveConUp, get_config)
 --autostop          -
 --xcoord [ arg ]    - X-coord
 --ycoord [ arg ]    - Y-coord
 --speed [ arg ]     - Speed
 --step [ arg ]      -
 --panspeed [ arg ]  -
 --panstep [ arg ]   -
 --tiltspeed [ arg ] -
 --tiltstep [ arg ]  -
 --preset [ arg ]    -

EXAMPLES

 # Direct protocol testing (no database needed)
 zmcontrol.pl --protocol ONVIF --address admin:pass@192.168.1.100 --command get_config
 # With profile token
 zmcontrol.pl --protocol ONVIF --address admin:pass@cam:8080 --device prof0 --command get_config
 # Send command to running monitor daemon
 zmcontrol.pl --id 1 --command moveConUp
2026-05-29 --stderr