Here are some example filters for use with Zoneminder. If you have a useful filter, please add it here.
Also review the official documentation: https://zoneminder.readthedocs.io/en/stable/userguide/filterevents.html
Note about purgewhenfull and Additional HDDs
Receive email alarm on Weekends
For monitoring on the weekend you might have:
end date/time greater than or equal to -1 minute AND alarm frames greater than or equal to 1 AND Weekday equal to Saturday OR Weekday equal to Sunday AND alarm frames greater than or equal to 1 AND date/time greater than or equal to -1 minute
Choose "email details upon match" in the filter. For more details see Email Note that this is an example without brackets. Brackets can make this simpler, and see below for an example with those.
Receive email for specific monitor on Sunday
Monitor id equal to ### AND Cause not equal to Signal AND End Date/Time greater than or equal to -1 minute AND Alarm frames greater than or equal to 10 AND Weekday equal to Sunday
Run filter from the command line
From the forum:
You can use cron job to run the filter. Don't check the run in background box .. then in cron job run zmfilter.pl --filter_id=[whatever the id is].
Run a filter from the command line (alt.)
From the forum:
sudo zmdc.pl status zmfilter .pl --filter_id=2 --daemon to see what zmdc.pl thinks about it. sudo zmdc.pl start zmfilter .pl --filter_id=2 --daemon Is basically how to web ui tells zmdc.pl to run it, so running that from command line should do the same thing. ps ax | grep zmfilter should either list it or not.
Play audio notification upon alert
See forum post: https://forums.zoneminder.com/viewtopic.php?t=32650
Example with brackets / parenthesis
The brackets can be confusing, so here's an example that makes it clear. This filter should fire off on any alerts that are at nights or weekends.
Always run the filter with 'list matches' after saving it. This way you will see if there is an error in your SQL syntax. For example, one error might be to set EndStartTime to 'is' Sunday when it must instead be EndStartTime 'is equal to' Sunday.