-
-
Notifications
You must be signed in to change notification settings - Fork 3
ezmlm tstdig.1
ezmlm-tstdig - Tests if a digest should be created
ezmlm-tstdig [ -k kbytes ] [ -m msg ] [ -t time ] dir
ezmlm-tstdig reads files in the list directory dir and determines if any of the criteria specified by the options are met. If they are, or if all options specified are 0, ezmlm-tstdig exits with success (0). Otherwise, ezmlm-tstdig exits (99), or in case of errors, (100) for permanent and (111) for temporary errors.
The normal use of ezmlm-tstdig is to place it in a script so that ezmlm-get(1) is executed if ezmlm-tstdig exits 0, but skipped otherwise.
ezmlm-tstdig uses LOCAL to adapt its behavior so that it can be used from the command line, a script, or from within dir*/editor***, or dir*/manager***. If invoked from dir*/editor***, the ezmlm-tstdig line should end in '|| exit 99'. When used here, ezmlm-tstdig if digest generation criteria are met tests a timestamp in dir*/tstdig***. If dir*/tstdig*** is more than 1 hour old or a digest has been successfully created since dir*/tstdig*** was written, ezmlm-tstdig will set the timestamp to the current time and exit 0. Otherwise it will exit 99. This is to guard against initiating duplicate digests when messages arrive while digesting is in progress.
-k
Success if more than kbytes of message body has accumulated since the
latest digest. Defaults to the value in dir*/digsize*** if it exists
or 64 otherwise.
-m
Success if more than msg messages have accumulated since the latest
digest. Defaults to the value in dir*/digcount*** if it exists or 30
otherwise.
-t
Success if more than time hours have passed since the latest digest.
Defaults to the value in dir*/digtime*** if it exists or 48
otherwise.
This is an example script for ezmlm-tstdig usage.
#!/bin/sh #usage: script dir diglist@host #digest if > 64 kbytes message bodies, # > 30 messages, or # > 48 hours since last digest. # ezmlm bin path - modify for your setup EZPATH='/usr/local/bin/ezmlm' EZTST="${EZPATH}/ezmlm-tstdig" EZGET="${EZPATH}/ezmlm-get" ${EZTST} -k64 -m30 -t48 "$1" || exit 0 ${EZGET} -t "'$2'" "'$1'" < /dev/null # improve by testing exit status
Obviously, ezmlm-tstdig should be integrated into the digesting program so that dir*/tstdig*** will not be not necessary. This may be done in the next version.
ezmlm-get(1), ezmlm-make(1), ezmlm-manage(1), ezmlm-send(1), ezmlm(5),