Rememberevent.sh
Материал из RuVDRWiki
Скрипт модуля Epgsearch
#!/bin/sh
#
# rememberevent.sh
#
# source: vdr-plugin epgsearch
#
# add this lines to your epgsearchcmds.conf:
# folgende zeilen in die epgsearchcmds.conf eintragen:
#
# remember event : /path_to_this_script/rememberevent.sh 0
# remember event (inc. switch) : /path_to_this_script/rememberevent.sh 1
# show event list : /path_to_this_script/rememberevent.sh -ls
# remove all events? : /path_to_this_script/rememberevent.sh -rm
# CONFIG START
#ATD_SPOOL=/var/spool/atjobs
ATD_SPOOL=/var/spool/cron/atjobs
# default settings
MINSBEFORE=1 # minutes before event for announcement
FORMAT=UTC # date format, eg.: UTC/MET
# CONFIG END
PATH=$PREFIX/bin:$PREFIX/sbin:$PATH
case $1 in
-ls)
eval $(grep -hs ^'echo -e ' $ATD_SPOOL/*)
;;
-rm)
find $ATD_SPOOL -exec grep -qs ^'echo -e ' \{} \; -exec rm -f \{} \;
;;
*)
switch_time=`date -d "1970-01-01 $FORMAT $3 seconds" +"%a.%d %H:%M"`
secs=$(($3-$MINSBEFORE*60))
secs_now=`date +%s`
if [ $secs -le $secs_now ] ; then
echo "svdrpsend.pl -p ${VDR_PORT:-2001} MESG '$2 already runs!' >/dev/null" | at now
else
if [ -z "$(find $ATD_SPOOL -exec grep -qs "$switch_time: $6\\\\n$2\\\\n======" \{} \; -exec rm -v \{} \;)" ] ; then
at $(date -d "1970-01-01 $FORMAT $secs seconds" +"%H:%M %m/%d/%Y") <<EOT
svdrpsend.pl -p ${VDR_PORT:-2001} MESG '${switch_time#* }: $2' >/dev/null
sleep $(($MINSBEFORE*60))s
if [ $1 -eq 1 ] ; then
svdrpsend.pl -p ${VDR_PORT:-2001} CHAN $5 >/dev/null
else
svdrpsend.pl -p ${VDR_PORT:-2001} MESG '$2 starts!' >/dev/null
fi
exit 0
echo -e "$switch_time: $6\n$2\n======";
EOT
fi
fi
;;
esac
