use ElkM1::Control;
my $elk = ElkM1::Control->new('host' => '192.168.0.251', 'port' => 2101, use_ssl => 0); # Connect to the M1
while (1) { # Loop forever
while (my $msg = $elk->readMessage) { # Read M1 messages
if (ref($msg) eq 'ElkM1::Control::ZoneChangeUpdateReport') { # Look for zone changes
if ($msg->getZone == 1 and $msg->isViolated) { # Was zone 1 violated?
system("YourFile.bat");
}
}
}
}