aboutsummaryrefslogtreecommitdiff
path: root/scripts/media_is_spotify_playing.sh
blob: 8c10aadefb04d039aec2ab745dad1b02b65ef410 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/bin/bash

spotify_running=false

if pgrep spotify &>/dev/null
then
    if type pacmd &>/dev/null
    then
        output=$(pacmd list-sink-inputs)
        state=""
        spotify_running=false

        while read -r line; do
            if [[ $line == *state* ]]
            then
                if [[ $line == *RUNNING* ]]
                then
                    state="RUNNING" 
                else
                    state=""
                fi
            fi

            if [[ $line == *application.name* ]]
            then
                if [[ $state == "RUNNING" ]] && [[ $line == *Spotify* ]]
                then
                    spotify_running=true
                    break
                fi
            fi
        done <<< "$output"
    elif lsof | grep /dev/snd | grep spotify &>/dev/null
    then
        spotify_running=true
    fi
fi

echo $spotify_running
if [[ $spotify_running == "true" ]]
then
    exit 0
else
    exit 1
fi