return to previous state after custom color
This commit is contained in:
parent
38863e1714
commit
91212e0468
11
light.sh
11
light.sh
|
@ -1,10 +1,12 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
TMPFILE_BASE=/tmp/light_state
|
TMPFILE_BASE=/tmp/light_state
|
||||||
|
TMPFILE_CUSTOM_BASE=/tmp/light_state_custom
|
||||||
ROOM_NUMBER="$1"
|
ROOM_NUMBER="$1"
|
||||||
COLOR="$2"
|
COLOR="$2"
|
||||||
|
|
||||||
ROOM_COUNT=3
|
ROOM_COUNT=3
|
||||||
|
DFAULT_LIGHT_STATE=0
|
||||||
STATE_0="a\x00\x03\x00\x00\x00|000000000000000000;\
|
STATE_0="a\x00\x03\x00\x00\x00|000000000000000000;\
|
||||||
000000000000000000;\
|
000000000000000000;\
|
||||||
000000000000000000"
|
000000000000000000"
|
||||||
|
@ -67,10 +69,14 @@ fi
|
||||||
|
|
||||||
touch "${TMPFILE_BASE}_$ROOM_NUMBER"
|
touch "${TMPFILE_BASE}_$ROOM_NUMBER"
|
||||||
LIGHT_STATE=$(cat "${TMPFILE_BASE}_$ROOM_NUMBER")
|
LIGHT_STATE=$(cat "${TMPFILE_BASE}_$ROOM_NUMBER")
|
||||||
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=0
|
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=$DFAULT_LIGHT_STATE
|
||||||
|
|
||||||
if [ -z "$COLOR" ]; then
|
if [ -z "$COLOR" ]; then
|
||||||
LIGHT_STATE=$(( $LIGHT_STATE+1 ))
|
if ! [ -f "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER" ]; then # restore previous colour
|
||||||
|
LIGHT_STATE=$(( $LIGHT_STATE+1 ))
|
||||||
|
else
|
||||||
|
rm -f "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER"
|
||||||
|
fi
|
||||||
case $LIGHT_STATE in
|
case $LIGHT_STATE in
|
||||||
0)
|
0)
|
||||||
STATE=$STATE_0
|
STATE=$STATE_0
|
||||||
|
@ -88,6 +94,7 @@ if [ -z "$COLOR" ]; then
|
||||||
esac
|
esac
|
||||||
else
|
else
|
||||||
STATE="$(get_room_color_string)"
|
STATE="$(get_room_color_string)"
|
||||||
|
touch "${TMPFILE_CUSTOM_BASE}_$ROOM_NUMBER"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for i in {1..5}; do
|
for i in {1..5}; do
|
||||||
|
|
Loading…
Reference in New Issue