#!/bin/sh

# TMDA and VmailMGR - Script to Email stats to users
#
# Modified from code provided by S.Toms (smotrs@mindspring.com)
# and tips gathered from the tmda-users@tmda.net list.
# 8 August 2002
#
# Script will email the users of a VmailMGR virtual domain
# the following information:
#       1. Messages that are pending and older than XX hours
#       2. Messages that were dropped
#       3. Will delete pending msgs older than YY days.
#

PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin

# Set the following 6 variables:
# 1. Your domain name
DOMAIN=yourdomain.net

# 2. Report pending messages that are X hours old
HOURS=48

# 3. Delete pending messages that are Y days old
DAYS=30

# 4. path to tmda-pending
TMDAPENDING=/usr/local/tmda/bin/tmda-pending

# 5. path to users tmda config
TMDACONFIG=/home/dom/tmda/

# 6. path to users tmda log
TMDALOG=/home/dom/logs/


# Part 1

# user file contains one user per line
LIST=/tmp/emailusers-$DOMAIN.tmp

ls  /home/dom/$DOMAIN/users/ > $LIST
for user in `cat $LIST`; do
echo "
=======================================
 Pending Messages olders than $HOURS hours
=======================================" > /tmp/$user-mail.tmp
 $TMDAPENDING -c /$TMDACONFIG/$user/.tmdarc -Cbs -O ${HOURS}h > /tmp/$user-pending.tmp
 more /tmp/$user-pending.tmp >> /tmp/$user-mail.tmp

# Part 2
echo "

============================
 Messages that were dropped
============================

" >> /tmp/$user-mail.tmp
 more /$TMDALOG/tmda_incoming-$user.log |grep -v drware-prize-o-matic |grep -B 6 -A 1 DROP > /tmp/$user-drop.tmp
 more /tmp/$user-drop.tmp >> /tmp/$user-mail.tmp

# Let send mail if there is data
SIZE1=`cat /tmp/$user-pending.tmp | wc -l`
SIZE2=`cat /tmp/$user-drop.tmp | wc -l`
NUM=0

if [ $NUM -lt $SIZE1 ];
then 
    more /tmp/$user-mail.tmp | mail -s "$user TMDA: `date +%Y-%m-%d`" postmaster@$DOMAIN
else
   if [ $NUM -lt $SIZE2 ];
   then
      more /tmp/$user-mail.tmp | mail -s "$user TMDA: `date +%Y-%m-%d`" postmaster@$DOMAIN
   fi
fi 

rm /tmp/$user-mail.tmp
rm /tmp/$user-pending.tmp
rm /tmp/$user-drop.tmp

# Part 3
 $TMDAPENDING -c /$TMDACONFIG/$user/.tmdarc -q -b -d -O ${DAYS}d


done

exit 0


