RandomVideo/buzzer.sh

54 lines
1.1 KiB
Bash
Executable File

#!/bin/sh
buzzgpio=0
strobogpio=2
swupgpio=23
swdowngpio=25
player="cvlc"
playerparam="--play-and-exit --quiet --no-osd -A alsa --alsa-audio-device=front:CARD=Device,DEV=0"
pgrepplayer="vlc"
cmdgpio="$(command -v gpio)"
$cmdgpio mode $buzzgpio in
$cmdgpio mode $strobogpio out
$cmdgpio write $strobogpio 1
$cmdgpio mode $swdowngpio in
$cmdgpio mode $swupgpio in
while true; do
buzzerstat="$($cmdgpio read $buzzgpio)"
swupstat="$($cmdgpio read $swupgpio)"
if [ "$buzzerstat" -eq 0 ] && [ "$swupstat" -eq 0 ]; then
/home/pi/RandomVideo/RandomVideo.sh buzzer
$cmdgpio write $strobogpio 0; sleep 1; $cmdgpio write $strobogpio 1 &
sleep 1
elif [ "$swupstat" -eq 1 ]; then
if $(command -v pgrep) "$pgrepplayer" > /dev/null; then
$(command -v pkill) "$pgrepplayer"
fi
$(command -v $player) $playerparam --loop ~/RandomVideo/onair.mp4 &
while [ "$swupstat" -eq 1 ]; do
swupstat="$($cmdgpio read $swupgpio)"
sleep 0.1
done
$(command -v pkill) "$pgrepplayer"
elif [ "$buzzerstat" -eq 1 ] && [ "$swupstat" -eq 0 ]; then
sleep 0.1
fi
done