rendered paste body#!/bin/bash# Configuration VariablesOUTDIR="$HOME/pdf-output"PRINTER_NAME='xerox'RECIPIENT_TO='YOUR_EMAIL_ADDRESS_HERE'RECIPIENT_CC='SOMEONE_ELSES_EMAIL_ADDRESS'MAIL_FROM='ADDRESS_TO_SEND_EMAIL_FROM'# Paths to Binary ExecutablesMKDIR='/bin/mkdir'GREP='/bin/grep'BASENAME='/bin/basename'DATE='/bin/date'WGET='/usr/bin/wget'WKHTMLTOPDF='/usr/local/bin/wkhtmltopdf'HTMLDOC='/usr/bin/htmldoc'LPR='/usr/bin/lpr'RM='/bin/rm'CAT='/bin/cat'SENDEMAIL='/usr/local/bin/sendEmail'# Runtime VariablesTDIR=`mktemp -t -d alert.XXXX`TFILE=`mktemp -p $TDIR rawmsg.XXXX`OUTDIR="$OUTDIR/`date +%Y-%m`"cleanup() { trap '' 0 2 $RM -Rf $TDIR [ "$1" ] && exit $1}ctrl_c() { echo "Interrupted" >&2 cleanup 0}die() { echo "$*" >&2 cleanup 1}trap ctrl_c 2trap cleanup 0# Handle cmdline argumentsVERBOSE='no'while getopts ":v" flag ; do case $flag in "v") VERBOSE='yes' ;; esacdone# Make sure out output directory existsif [ ! -d "$OUTDIR" ] ; then $MKDIR -p $OUTDIRfi### STEP 1# Save stdin to file[ "$VERBOSE" = 'yes' ] && echo "==> Starting to process message"[ "$VERBOSE" = 'yes' ] && echo " -- Temporary file: $TFILE"[ "$VERBOSE" = 'yes' ] && echo " -- Output Directory: $OUTDIR"$CAT > $TFILE### STEP 2# Extract the URL# http://www.19fire.com.au/maps/F091002927_WAND.htmlURL=`$GREP -E '^http://www\.19fire\.com\.au' $TFILE`if [ -n "$URL" ] ; then # Got the URL [ "$VERBOSE" = 'yes' ] && echo " -- URL is $URL"else # Missing URL! [ "$VERBOSE" = 'yes' ] && echo " -- Could not locate a URL in $TFILE" exit 1fi### STEP 3# Extract Job Number from URLJOBID=`$BASENAME $URL`JOBID=${JOBID%.html}[ "$VERBOSE" = 'yes' ] && echo " -- Job ID is $JOBID"### STEP 4# Generate the output filenameOUTFILE="$JOBID.ps"[ "$VERBOSE" = 'yes' ] && echo " -- Output File is $OUTFILE"### STEP 5# Fetch the URL and convert it to PDF$WGET -q -O - "$URL" | $WKHTMLTOPDF \ --no-background \ --page-size A4 \ --margin-top 20 \ --margin-bottom 20 \ --margin-left 24 \ - \ $OUTDIR/$OUTFILE### STEP 6# Print the file (or whatever)if [ -f "$OUTDIR/$OUTFILE" ] ; then $LPR -T "Turnout Report for $JOBID" \ -P $PRINTER_NAME \ -h \ $OUTDIR/$OUTFILE # Email to Phil for debugging and testing purposes $SENDEMAIL \ -f "$MAIL_FROM" \ -t "$RECIPIENT_TO" \ -cc "$RECIPIENT_CC" \ -u "PDF Turnout Report for Job $JOBID" \ -m "See attached." \ -a $OUTDIR/$OUTFILE \ -qelse echo "SOMETHING SCREWED UP; $OUTFILE DOESN'T EXIST!"fi### STEP 7# Cleanupcleanupexit 0