#!/bin/bash
cat << endt
Adzan program (c) Rosandi
endt
PERIOD=60
SCHDIR=$HOME/adzan
SCHFILE=$SCHDIR/`date +"%m.%Y"`
ADZAN=$SCHDIR/Makkah.mp3
PLAYER="mplayer -quiet"
[[ ! -z $1 ]] && PERIOD=$1
if [[ ! -f $SCHFILE ]]; then
echo "can not find schedule file $SCHFILE"
exit
fi
AdzanPrg() {
DAY=$(date +"%d")
NOW=$(date +"%H %M" | awk '{print 60*$1+$2}')
LOGFILE=/tmp/adzan.log
prayercall=`awk '
$1=='$DAY'{
n='$NOW'
# 5 minutes tollerance
if (n>=$2 && n<($2+5)) print "subuh"
else if (n>=$3 && n<($3+5)) print "duhur"
else if (n>=$4 && n<($4+5)) print "ashar"
else if (n>=$5 && n<($5+5)) print "magrib"
else if (n>=$6 && n<($6+5)) print "isya"
}
' $SCHFILE`
[[ -z $prayercall ]] && return
[[ ! -f $LOGFILE ]] && echo assalamualaikum > $LOGFILE
if [ ! "$prayercall" = "`cat $LOGFILE`" ]; then
msg="calling for $prayercall prayer"
echo $prayercall > $LOGFILE
$PLAYER $ADZAN &
PLAYID=$!
Xdialog --title "Call for pray" --yesno "$msg\n`date +%H:%M`" 7 50
[ $? -eq 1 ] && kill $PLAYID
fi
}
while true; do
AdzanPrg
sleep $PERIOD
done