From fb35ec9e8e8346a1c5432b90ab305a8b5a08bfca Mon Sep 17 00:00:00 2001 From: Bruno 21 Date: Tue, 15 Dec 2020 08:58:16 +0100 Subject: [PATCH] sonos.sh + raccourcis-clavier dans les menus --- sonos.sh | 189 ++++++++++++++++++++++++++++++------------------------- 1 file changed, 102 insertions(+), 87 deletions(-) diff --git a/sonos.sh b/sonos.sh index af47fa9..7b1bfd1 100755 --- a/sonos.sh +++ b/sonos.sh @@ -2,15 +2,31 @@ clear about() { + clear echo "" echo -e "\033[1mAbout:\033[0m" echo "" + echo " ##### ##### #### #### ## "; + echo " ## ## ## ## ## ## "; + echo " ##### ## ## #### ## ## #### ## ## ### ## ## ## ### "; + echo " ## ## ## ## ## ## ## ###### ## ## ## ## ## ## ## ## ## "; + echo " ##### ## ## ## ## ## ## ## # ## ## ## ## ## ## "; + echo " ## ## ## ## ## ## ## ## ## ## ## ## ##### ## ## ## "; + echo " ###### ##### #### ##### #### ####### #### ## ###### #### "; + echo " ##### "; + echo "" + echo "Just a GUI for the wonderful tool SoCo-Cli" + echo "" + echo "https://github.com/avantrec/soco-cli" + echo "" + echo "" } help() { echo "" echo -e "\033[1mHelp:\033[0m" echo "" + echo "" } inform() { @@ -41,130 +57,130 @@ inform() { } soco() { + clear device="$1" while true do clear - #echo "###############" + echo "" echo -e "\033[1m 🔊 Sonos $device \033[0m" - #echo "###############" echo "" PS3="Select an option: " options=( - "France Info" - "France Inter" - "K6 FM" - "Rires et Chansons" - "RTL" - "Deezer Flow" - "Playlist list_favs" - "-start $device" - "-stop $device" - "-volume 11" - "-volume 13" - "-volume 15" - "-mute ON" - "-mute OFF" - "-status light ON" - "-status light OFF" - "-infos on $device" - "Menu Principal" + "France In(f)o" + "France In(t)er" + "(K)6 FM" + "Rires et (C)hansons" + "(R)TL" + "(D)eezer Flow" + "(P)laylist list_favs" + "-(s)tart $device" + "-s(t)op $device" + "-(i)nfos on $device" + "-volume (11)" + "-(m)ute ON" + "-volume (13)" + "-m(u)te OFF" + "-volume (15)" + "-status (l)ight ON" + "-status light (O)FF" + "Menu Princip(a)l" ) select opt2 in "${options[@]}" do - case $opt2 in - "France Info") - echo -e "\033[1m Playing France Info... \033[0m" + case "$REPLY" in + 1|f|F) + echo -e "\n\033[1m Playing France Info... \033[0m" sonos $device play_fav 'franceinfo' && sleep 2 break ;; - "France Inter") - echo -e "\033[1m Playing France Inter... \033[0m" + 2|t|T) + echo -e "\n\033[1m Playing France Inter... \033[0m" sonos $device play_fav 'france inter' && sleep 2 break ;; - "K6 FM") - echo -e "\033[1m Playing K6 FM... \033[0m" + 3|k|K) + echo -e "\n\033[1m Playing K6 FM... \033[0m" sonos $device play_fav 'K6 FM' && sleep 2 break ;; - "Rires et Chansons") - echo -e "\033[1m Playing Rires et Chansons... \033[0m" + 4|c|C) + echo -e "\n\033[1m Playing Rires et Chansons... \033[0m" sonos $device play_fav 'Rire et Chansons' && sleep 2 break ;; - "RTL") - echo -e "\033[1m Playing RTL... \033[0m" + 5|r|R) + echo -e "\n\033[1m Playing RTL... \033[0m" sonos $device play_fav 'RTL' && sleep 2 break ;; - "Deezer Flow") - echo -e "\033[1m Playing Deezer Flow... \033[0m" + 6|d|D) + echo -e "\n\033[1m Playing Deezer Flow... \033[0m" sonos $device play_fav 'Flow' break ;; - "Playlist list_favs") - echo -e "\033[1m Display playlist list_favs... \033[0m" + 7|p|P) + echo -e "\n\033[1m Display playlist list_favs... \033[0m" sonos $device list_favs read -p "" break ;; - "-start $device") - echo -e "\033[1m Start $device... \033[0m" + 8|s|S) + echo -e "\n\033[1m Start $device... \033[0m" sonos $device start && sleep 2 break ;; - "-stop $device") - echo -e "\033[1m Stop $device... \033[0m" + 9|t|T) + echo -e "\n\033[1m Stop $device... \033[0m" sonos $device stop && sleep 2 break ;; - "-volume 11") - echo -e "\033[1m Set volume to level 11... \033[0m" - sonos $device volume 11 && sleep 2 - break - ;; - "-volume 13") - echo -e "\033[1m Set volume to level 13... \033[0m" - sonos $device volume 13 && sleep 2 - break - ;; - "-volume 15") - echo -e "\033[1m Set volume to level 15... \033[0m" - sonos $device volume 15 && sleep 2 - break - ;; - "-mute ON") - echo -e "\033[1m Mute ON... \033[0m" - sonos $device mute on && sleep 2 - break - ;; - "-mute OFF") - echo -e "\033[1m Mute OFF... \033[0m" - sonos $device mute off && sleep 2 - break - ;; - "-status light ON") - echo -e "\033[1m Status light ON... \033[0m" - sonos $device status_light on && sleep 2 - break - ;; - "-status light OFF") - echo -e "\033[1m Status light OFF... \033[0m" - sonos $device status_light off && sleep 2 - break - ;; - "-infos on $device") - echo -e "\033[1m Infos on $device... \033[0m" + 10|i|I) + echo -e "\n\033[1m Infos on $device... \033[0m" inform $device read -p "" break ;; - "Menu Principal") + 11) + echo -e "\n\033[1m Set volume to level 11... \033[0m" + sonos $device volume 11 && sleep 2 + break + ;; + 12|m|M) + echo -e "\n\033[1m Mute ON... \033[0m" + sonos $device mute on && sleep 2 + break + ;; + 13) + echo -e "\n\033[1m Set volume to level 13... \033[0m" + sonos $device volume 13 && sleep 2 + break + ;; + 14|u|U) + echo -e "\n\033[1m Mute OFF... \033[0m" + sonos $device mute off && sleep 2 + break + ;; + 15) + echo -e "\n\033[1m Set volume to level 15... \033[0m" + sonos $device volume 15 && sleep 2 + break + ;; + 16|l|L) + echo -e "\n\033[1m Status light ON... \033[0m" + sonos $device status_light on && sleep 2 + break + ;; + 17|o|O) + echo -e "\n\033[1m Status light OFF... \033[0m" + sonos $device status_light off && sleep 2 + break + ;; + 18|a|A) exec "$0" ;; - *) echo -e "\033[1;31m invalid option \033[0m";; + *) echo -e "\n\033[1;31m invalid option \033[0m";; esac done done @@ -174,34 +190,33 @@ while true do clear +echo -e "" echo -e "\033[1m 🔈 SoCo-Cli GUI\033[0m" echo -e "" PS3='Select an option: ' -options=("About" "Help" "Chambre" "Salon" "Exit") +options=("(A)bout" "(H)elp" "(C)hambre" "(S)alon" "(Q)uit") select opt in "${options[@]}" do - case $opt in - "About") - #echo "About" + case "$REPLY" in + 1|a|A) about read -p "" break ;; - "Help") - #echo "Help" + 2|h|H) help read -p "" break ;; - "Chambre") + 3|c|C) soco "Chambre" ;; - "Salon") + 4|s|S) soco "Salon" ;; - "Exit") + 5|q|Q) exit ;; *) echo "invalid option"