X-Git-Url: https://git.madduck.net/etc/mailfilter.git/blobdiff_plain/b6c92160b09b98f85da28b136d288aa9d83029d6..6f64c2e5407c4f0ce4c46a2723bda1e45f35d9af:/procmail/delay-delivery diff --git a/procmail/delay-delivery b/procmail/delay-delivery index 2c6fc4d..e68d829 100644 --- a/procmail/delay-delivery +++ b/procmail/delay-delivery @@ -1,7 +1,7 @@ -# create table messages (msgid text unique not null, filename text -# primary key not null unique, release_ts integer not null); +#TODO: create config/delay-(disabled|tonight|weekend) :0 +* ! DISABLE_DELAYS ?? . * DELAY ?? . * ! DELAYED ?? . { @@ -10,15 +10,15 @@ { DELAY="now + $DELAY" } #TODO: for tickling, use header date - RELEASE="`date -d \"$DELAY\" +'%s %c'`" + RELEASE="`$BIN_DATE -d \"$DELAY\" +'%s %c'`" + :0 *$ RELEASE ?? ^\/${RE_NOT_SPACE}+ { RELEASE_TS=$MATCH } - VERBOSE=yes :0 - *$ $RELEASE_TS^0 - *$ -$OURDATE_TS^0 + *$ $RELEASE_TS ^0 + *$ -$OURDATE_TS ^0 { :0 *$ RELEASE ?? ^[0-9]+${RE_SPACE}+\/.+ @@ -26,21 +26,12 @@ LOG="delay: delay delivery of $MSGID until $RELEASE_TIME$NL" - DELAYED_QUEUE_DB=$PMVAR/delayed-queue.sqlite - DO_QUERY="$SQLITE $DELAYED_QUEUE_DB" - - DATA="$MSGID" - INCLUDERC=$PMDIR/sql-escape - - Q="insert into messages values - ($DATA, '\\'\$DESTFILE\\'', $RELEASE_TS)" - TRAP="$TRAP; $DO_QUERY '$Q'" - :0 fw |$FORMAIL -I "X-Delayed: $RELEASE_TS ($RELEASE_TIME)" + INCLUDERC=$PMDIR/record-delayed-mail + :0 $DELAYED_QUEUE } - VERBOSE=no }