#!/bin/bash # # rememberevent.sh # # source: vdr-plugin epgsearch # # add this lines to your epgsearchcmds.conf: # folgende zeilen in die epgsearchcmds.conf eintragen: # # remember event  : /usr/local/bin/rememberevent.sh 0 # remember event (inc. switch) : /usr/local/bin/rememberevent.sh 1 # show event list  : /usr/local/bin/rememberevent.sh -ls # remove all events?  : /usr/local/bin/rememberevent.sh -rm # CONFIG START ATD_SPOOL=/var/spool/atjobs SVDRPSEND=svdrpsend # default settings MINSBEFORE=1 # minutes before event for announcement COLUMNS=17 # columns for the epg entry FORMAT=MET # date format, eg.: UTC/MET # CONFIG END PATH=/usr/local/bin:$PATH case $1 in -ls) grep -s ^'#[0-2][0-9]:[0-5][0-9]#' $ATD_SPOOL/* | sort -t. +1 | cut -d'#' -f3 ;; -rm) find $ATD_SPOOL -exec grep -qs ^'#[0-2][0-9]:[0-5][0-9]#' \{} \; -exec rm -f \{} \; ;; *) switch_time=`date -d "1970-01-01 $FORMAT $3 seconds" +"%a.%d %H:%M"` entry="#${switch_time#* }#$(printf "%-10s%-0s\n" "${6:0:9}" "$switch_time ${2:0:$COLUMNS}")" secs=$(($3-$MINSBEFORE*60)) secs_now=`date +%s` if [ $secs -le $secs_now ]; then echo "$SVDRPSEND MESG '$2 already runs!' >/dev/null" | at now else if [ -z "$(find $ATD_SPOOL -exec grep -qs "^$entry$" \{} \; -exec rm -v \{} \;)" ]; then at $(date -d "1970-01-01 $FORMAT $secs seconds" +"%H:%M %m/%d/%Y") </dev/null sleep $(($MINSBEFORE*60))s if [ $1 -eq 1 ] ; then $SVDRPSEND CHAN $5 >/dev/null else $SVDRPSEND MESG '$2 starts!' >/dev/null fi $entry EOT fi fi ;; esac