implemented lounge color control
This commit is contained in:
parent
8043247fe3
commit
02ac4c9bdc
|
@ -3,8 +3,7 @@
|
||||||
COMMAND_FILE=/tmp/command
|
COMMAND_FILE=/tmp/command
|
||||||
|
|
||||||
lounge_light() {
|
lounge_light() {
|
||||||
COLOR=$1
|
./light.sh $1
|
||||||
echo "not implemented" #FIXME
|
|
||||||
}
|
}
|
||||||
|
|
||||||
lounge_light_toggle() {
|
lounge_light_toggle() {
|
||||||
|
@ -23,7 +22,7 @@ while true; do
|
||||||
lounge_light_toggle
|
lounge_light_toggle
|
||||||
;;
|
;;
|
||||||
lounge_light*)
|
lounge_light*)
|
||||||
lounge_light "$(echo "$COMMAND " | cut -d" " -f2 | grep -oe "[a-z]\?[0-9a-fA-F]*" | head -n1)"
|
lounge_light "$(echo "$line " | cut -d" " -f2 | grep -oe "[a-z]\?[0-9a-fA-F]*" | head -n1)"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
echo "ERROR; available commands:" >&2
|
echo "ERROR; available commands:" >&2
|
||||||
|
|
44
light.sh
44
light.sh
|
@ -5,26 +5,32 @@ touch $TMPFILE
|
||||||
LIGHT_STATE=$(cat $TMPFILE)
|
LIGHT_STATE=$(cat $TMPFILE)
|
||||||
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=0
|
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=0
|
||||||
|
|
||||||
STATE_0="a\x00\x03\x00\x00\x00;000000000000000000"
|
if [ -z "$1" ]; then
|
||||||
STATE_1="a\x00\x03\xff\xff\xff;255255255255255255"
|
STATE_0="a\x00\x03\x00\x00\x00;000000000000000000"
|
||||||
STATE_2="n\x00\x02\x01\x00;170000070150000050"
|
STATE_1="a\x00\x03\xff\xff\xff;255255255255255255"
|
||||||
|
STATE_2="n\x00\x02\x01\x00;170000070150000050"
|
||||||
|
|
||||||
LIGHT_STATE=$(( $LIGHT_STATE+1 ))
|
LIGHT_STATE=$(( $LIGHT_STATE+1 ))
|
||||||
case $LIGHT_STATE in
|
case $LIGHT_STATE in
|
||||||
0)
|
0)
|
||||||
STATE=$STATE_0
|
STATE=$STATE_0
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
STATE=$STATE_1
|
STATE=$STATE_1
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
STATE=$STATE_2
|
STATE=$STATE_2
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
STATE=$STATE_0
|
STATE=$STATE_0
|
||||||
LIGHT_STATE=0
|
LIGHT_STATE=0
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
else
|
||||||
|
COLOR_A="$(echo $1 | sed "s/\(..\)\(..\)\(..\)/\\\x\2\\\x\1\\\x\3/g")"
|
||||||
|
COLOR_B="$(echo $1 | while read -N2 code; do printf "%03d" $((16#$code)); done)"
|
||||||
|
STATE="a\x00\x03$COLOR_A;$COLOR_B$COLOR_B"
|
||||||
|
fi
|
||||||
|
|
||||||
for i in {1..5}; do
|
for i in {1..5}; do
|
||||||
echo -en "$(echo "$STATE" | cut -d";" -f1)" > /dev/udp/172.23.92.15/49152 &
|
echo -en "$(echo "$STATE" | cut -d";" -f1)" > /dev/udp/172.23.92.15/49152 &
|
||||||
|
|
Loading…
Reference in New Issue