diff options
Diffstat (limited to 'music_status.sh')
-rw-r--r-- | music_status.sh | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/music_status.sh b/music_status.sh index 2e9cc87..39b806b 100644 --- a/music_status.sh +++ b/music_status.sh @@ -1,12 +1,26 @@ #Script that writes the current mpd status #To be called by a remote device + SSH_HOST='aberrant@ceres.local' -STATUS=$(mpc status | grep paused) -REMOTE_PORT_COMMAND='(arduino-cli board list | grep dev | grep -o '^\S*')' -if [ -z $STATUS ] #not paused -then - SONG=$(mpc current) - ssh $SSH_HOST "echo m$SONG > $REMOTE_PORT_COMMAND" -else #paused - ssh $SSH_HOST "echo mPAUSED > $REMOTE_PORT_COMMAND" -fi +REMOTE_PORT_COMMAND="\$(arduino-cli board list | grep dev | grep -o '^\S*')" +LAST_VAL="" +while true +do + STATUS=$(mpc status | grep paused) + if [ -z "$STATUS" ]; + then + SONG=$(mpc current) + if [ "$SONG" != "$LAST_VAL" ]; + then + ssh "$SSH_HOST" "echo m$SONG > $REMOTE_PORT_COMMAND" + LAST_VAL="$SONG" + fi + else + if [ "PAUSED" != "$LAST_VAL" ]; + then + ssh "$SSH_HOST" "echo mPAUSED > $REMOTE_PORT_COMMAND" + LAST_VAL="PAUSED" + fi + fi + sleep 5 +done |