In crontab heb ik met de opdracht `crontab -e` heb ik onderstaande regel ingevoerd om een script op te starten dat een geluid afspeeld.
30 10 * * * alarm.sh koffie
Code van alarm.sh:
waarvoor=$(echo $1 | tr a-z A-Z)
. /etc/alarm.conf # instellingen sourcen
case $waarvoor in # file met het af te spelen geluid.
KOFFIE)
file=$sounddir/$koffie
;;
COMPLETE)
file=$sounddir/$complete
;;
*)
exit 1
;;
esac
until [[ $i = $repeat ]] # Afspelen n maal herhalen
do
i=$(( i + 1 ))
ogg123 -d alsa $file # geluid afspelen
sleep 0.5
done
Instellingen worden uit onderstaande configuratiebestand (/etc/alarm.conf) gehaald:
repeat=10
sounddir=/usr/share/sounds/freedesktop/stereo
koffie=bell.oga
complete=complete.oga
Waarom hoor ik geen geluid? Het script alarm.sh staat in /usr/local/bin en heeft dezelfde eigenaar als de gebruiker met execute permissie.