X-Git-Url: https://git.madduck.net/etc/mailfilter.git/blobdiff_plain/0f4bcee75353935ff9bc605f7e0b31d12e302605..788ea8914a78296e6ef98a9be37a67485c34d32b:/procmail/tickle diff --git a/procmail/tickle b/procmail/tickle index 363efb7..f03d1ab 100644 --- a/procmail/tickle +++ b/procmail/tickle @@ -1,37 +1,37 @@ :0 * ! DEST ?? . +* ! TICKLE_DELIVERED ?? . * ORIGINAL_TO ?? ^.+@tickle\.madduck\.net$ * ORIGINAL_TO ?? ^\/[^@]+ { - BIN_DATE=/bin/date DELIVERY_TIME=04:20 STAMP :0 * MATCH ?? ^[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]$ - { STAMP="$MATCH (`$BIN_DATE -d @$MATCH +%c`)" } + { DELAY="@$MATCH" } :0 E * MATCH ?? ^[0-9]+h$ * MATCH ?? ^\/[^h]+ - { DATESTR="$DATE + $MATCH hours" } + { DELAY="$DATE + $MATCH hours" } JUST_DATE="`$BIN_DATE -d \"$DATE\" +%x`" :0 E * MATCH ?? ^[0-9]+m$ * MATCH ?? ^\/[^m]+ - { DATESTR="$JUST_DATE + $MATCH months $DELIVERY_TIME" } + { DELAY="$JUST_DATE + $MATCH months $DELIVERY_TIME" } :0 E * MATCH ?? ^[0-9]+w$ * MATCH ?? ^\/[^w]+ - { DATESTR="$JUST_DATE + $MATCH weeks $DELIVERY_TIME" } + { DELAY="$JUST_DATE + $MATCH weeks $DELIVERY_TIME" } :0 E * MATCH ?? ^[0-9]+d?$ * MATCH ?? ^\/[^d]+ - { DATESTR="$JUST_DATE + $MATCH days $DELIVERY_TIME" } + { DELAY="$JUST_DATE + $MATCH days $DELIVERY_TIME" } JUST_DATE DELIVERY_TIME @@ -43,25 +43,30 @@ HOST } - :0 - * ! STAMP ?? . - { STAMP=`$BIN_DATE +'%s (%c)' -d "$DATESTR"` } - - :0 - * ! STAMP ?? ^[0-9]+ \([A-Za-z ]+ [0-9 :]+\)$ - { - LOG="tickle: error creating timestamp ($STAMP), using \$now$NL" - STAMP="`$BIN_DATE +%s` (ERROR: original stamp '$STAMP' invalid)" - } - - :0 E - { LOG="tickle: stamping message $MSGID with $STAMP$NL" } + DELAYED_QUEUE=$BASE/.store/ :0 fw - |$FORMAIL -i "X-Tickle: $STAMP" + |$FORMAIL -i 'X-Tickle: yes' - :0 - $BASE/.tickler/ - - BIN_DATE +# :0 +# * ! STAMP ?? . +# { STAMP=`$BIN_DATE +'%s (%c)' -d "$DELAY"` } +# +# :0 +# * ! STAMP ?? ^[0-9]+ \([A-Za-z ]+ [0-9 :]+\)$ +# { +# LOG="tickle: error creating timestamp ($STAMP), using \$now$NL" +# STAMP="`$BIN_DATE +%s` (ERROR: original stamp '$STAMP' invalid)" +# } +# +# :0 E +# { LOG="tickle: stamping message $MSGID with $STAMP$NL" } +# +# :0 fw +# |$FORMAIL -i "X-Tickle: $STAMP" +# +# :0 +# { DEST=$TICKLER_QUEUE } } + +# vim:ft=procmail