1402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll#******************************************************************************* 2402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# Copyright (c) 2005, 2006 IBM Corporation and others. 3402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# All rights reserved. This program and the accompanying materials 4402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# are made available under the terms of the Eclipse Public License v1.0 5402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# which accompanies this distribution, and is available at 6402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# http://www.eclipse.org/legal/epl-v10.html 7402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# 8402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# Contributors: 9402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# IBM Corporation - initial API and implementation 10402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll#******************************************************************************* 11402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll#!/bin/sh 12402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 13402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# simple sample script to fire an email from the local machine to some user to 14402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# notify them of a change to the watched feed 15402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 16402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# Requirements: 17402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# tested on Debian (Kubuntu), using 18402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# exim 3.36-16 19402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# mailx 1:8.1.2-0.20040524cvs-4 20402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 21402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Molldebug=0; 22402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael MollfeedURL=""; 23402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollxpath=""; 24402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollnewvalue=""; 25402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Molloldvalue=""; 26402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 27402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollwhile [ "$#" -gt 0 ]; do 28402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll case $1 in 29402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll '-debug') 30402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll debug=$2; 31402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll shift 1 32402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll ;; 33402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll '-feedURL') 34402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll feedURL=$2; 35402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll shift 1 36402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll ;; 37402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll '-xpath') 38402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll xpath=$2; 39402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll shift 1 40402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll ;; 41402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll '-oldvalue') 42402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll oldvalue=$2; 43402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll shift 1 44402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll ;; 45402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll '-newvalue') 46402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll newvalue=$2; 47402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll shift 1 48402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll ;; 49402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll esac 50402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll shift 1 51402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Molldone 52402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 53402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ $debug -gt 0 ]; then 54402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "[sendEmailAlert] Started `date +%H:%M:%S`. Executing with the following options:" 55402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "-debug $debug"; 56402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "-feedURL $feedURL"; 57402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "-xpath $xpath"; 58402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "-oldvalue $oldvalue"; 59402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "-newvalue $newvalue"; 60402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollfi 61402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 62402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Molltmpfile="/tmp/sendEmailAlert.sh.tmp"; 63402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollecho "" > $tmpfile; 64402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 65402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# compose message 66402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollecho "Eclipse RSS Feed has been updated." >> $tmpfile; 67402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollecho "" >> $tmpfile; 68402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollecho "Here's what happened:" >> $tmpfile; 69402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollecho "" >> $tmpfile; 70402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 71402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ "x$xpath" != "x" ]; then echo "Changed Node: "$xpath >> $tmpfile; fi 72402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ "x$oldvalue" != "x" ]; then echo "Old Value: "$oldvalue >> $tmpfile; fi 73402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ "x$newvalue" != "x" ]; then echo "New Value: "$newvalue >> $tmpfile; fi 74402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ "x$feedURL" != "x" ]; then echo "Feed URL: "$feedURL >> $tmpfile; fi 75402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 76402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollecho "" >> $tmpfile; 77402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 78402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll#assemble mail info 79402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael MolltoAddress="codeslave@ca.ibm.com"; 80402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael MollfromAddress="Eclipse Build Team <NOSUCHADDRESS@eclipse.org>"; 81402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollsubject="Eclipse RSS Feed Updated!"; 82402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael MollMAIL="/usr/bin/mail"; 83402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 84402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ $debug -gt 0 ]; then 85402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "Sending the following email using "$MAIL":"; 86402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "--"; 87402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "Subject: "$subject; 88402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "To: "$toAddress 89402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "From: "$fromAddress 90402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "--"; 91402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll cat $tmpfile; 92402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "--"; 93402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollfi 94402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 95402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# send message 96402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollcat $tmpfile | $MAIL -s "$subject" -a "From: $fromAddress" $toAddress; 97402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 98402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll# cleanup 99402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollrm -fr $tmpfile; 100402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll 101402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollif [ $debug -gt 0 ]; then 102402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Moll echo "Done."; 103402794e73aed8611d62eb4b01cd155e2d76fcb87Raphael Mollfi 104