fixed various bugs
This commit is contained in:
parent
1246652dec
commit
13c93e37fb
34
light.sh
34
light.sh
|
@ -54,36 +54,29 @@ esac
|
||||||
set_room_color() {
|
set_room_color() {
|
||||||
case "$ROOM_NUMBER" in
|
case "$ROOM_NUMBER" in
|
||||||
0)
|
0)
|
||||||
find "$(dirname "$TMPFILE_PID_BASE")" -name "$(basename "${TMPFILE_PID_BASE}_0")" -exec sh -c 'cat {} | xargs kill; rm -f {}' \;
|
find "$(dirname "$TMPFILE_PID_BASE")" -name "$(basename "${TMPFILE_PID_BASE}_0*")" -exec sh -c 'cat {} | xargs kill; rm -f {}' \;
|
||||||
COLOR="$(echo "$STATE" | cut -d";" -f1 | cut -d"|" -f2)"
|
COLOR="$(echo "$STATE" | cut -d";" -f1 | cut -d"|" -f2)"
|
||||||
if [ "${COLOR:0:1}" == "!" ]; then
|
if [ "${COLOR:0:1}" == "!" ]; then
|
||||||
(
|
(
|
||||||
R1=$(( RANDOM % 256 )); G1=$(( RANDOM % 256 )); B1=$(( RANDOM % 256 ))
|
R1=$(( RANDOM % 256 )); G1=$(( RANDOM % 256 )); B1=$(( RANDOM % 256 ))
|
||||||
R2=$(( RANDOM % 256 )); G2=$(( RANDOM % 256 )); B2=$(( RANDOM % 256 ))
|
R2=$(( RANDOM % 256 )); G2=$(( RANDOM % 256 )); B2=$(( RANDOM % 256 ))
|
||||||
R3=$(( RANDOM % 256 )); G3=$(( RANDOM % 256 )); B3=$(( RANDOM % 256 ))
|
|
||||||
while true; do
|
while true; do
|
||||||
R1_=$(( RANDOM % 256 )); G1_=$(( RANDOM % 256 )); B1_=$(( RANDOM % 256 ))
|
R1_=$(( RANDOM % 256 )); G1_=$(( RANDOM % 256 )); B1_=$(( RANDOM % 256 ))
|
||||||
R2_=$(( RANDOM % 256 )); G2_=$(( RANDOM % 256 )); B2_=$(( RANDOM % 256 ))
|
R2_=$(( RANDOM % 256 )); G2_=$(( RANDOM % 256 )); B2_=$(( RANDOM % 256 ))
|
||||||
R3_=$(( RANDOM % 256 )); G3_=$(( RANDOM % 256 )); B3_=$(( RANDOM % 256 ))
|
while [ $R1 -ne $R1_ -a $G1 -ne $G1_ -a $B1 -ne $B1_ -a $R2 -ne $R2_ -a $G2 -ne $G2_ -a $B2 -ne $B2_ ]; do
|
||||||
while [ $R1 -ne $R1_ -o $G1 -ne $G1_ -o $B1 -ne $B1_ -o\
|
|
||||||
$R2 -ne $R2_ -o $G2 -ne $G2_ -o $B2 -ne $B2_ -o\
|
|
||||||
$R3 -ne $R3_ -o $G3 -ne $G3_ -o $B3 -ne $B3_ ]; do
|
|
||||||
DR1=$(sign $(($R1_-$R1))); DG1=$(sign $(($G1_-$G1))); DB1=$(sign $(($B1_-$B1)))
|
DR1=$(sign $(($R1_-$R1))); DG1=$(sign $(($G1_-$G1))); DB1=$(sign $(($B1_-$B1)))
|
||||||
DR2=$(sign $(($R2_-$R2))); DG2=$(sign $(($G2_-$G2))); DB2=$(sign $(($B2_-$B2)))
|
DR2=$(sign $(($R2_-$R2))); DG2=$(sign $(($G2_-$G2))); DB2=$(sign $(($B2_-$B2)))
|
||||||
DR3=$(sign $(($R3_-$R3))); DG3=$(sign $(($G3_-$G3))); DB3=$(sign $(($B3_-$B3)))
|
R1=$(($R1+$DR1)); G1=$(($G1+$DG1)); B1=$(($B1+$DB1)); R2=$(($R2+$DR2)); G2=$(($G2+$DG2)); B2=$(($B2+$DB2))
|
||||||
R1=$(($R1+$DR1)); G1=$(($G1+$DG1)); B1=$(($B1+$DB1))
|
echo "${GAMMA_LUT[$R1]} ${GAMMA_LUT[$G1]} ${GAMMA_LUT[$B1]} ${GAMMA_LUT[$R2]} ${GAMMA_LUT[$G2]} ${GAMMA_LUT[$B2]}" |\
|
||||||
R2=$(($R2+$DR2)); G2=$(($G2+$DG2)); B2=$(($B2+$DB2))
|
while read code; do printf "%03d" $code; done > /dev/udp/172.23.92.19/31302 &
|
||||||
R3=$(($R3+$DR3)); G3=$(($G3+$DG3)); B3=$(($B3+$DB3))
|
sleep .2
|
||||||
echo "$R1 $G1 $B1 $R1 $G1 $B1 $R2 $G2 $B2 $R2 $G2 $B2 $R3 $G3 $B3 $R3 $G3 $B3" |\
|
|
||||||
while read code; do printf "%03d" $code; done > /dev/udp/172.23.92.19/31302 &
|
|
||||||
sleep .5
|
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
) &
|
) &
|
||||||
PID=$!
|
PID=$!
|
||||||
echo $PID > ${TMPFILE_PID_BASE}_0.$PID
|
echo $PID > ${TMPFILE_PID_BASE}_0.$PID
|
||||||
else
|
else
|
||||||
for i in {1..5}; do (echo -en "$COLOR" > /dev/udp/172.23.92.19/31302 &); sleep .01; done
|
for i in {1..5}; do (echo -en "$COLOR" > /dev/udp/172.23.92.19/31302 &); sleep .1; done
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
|
@ -92,9 +85,10 @@ case "$ROOM_NUMBER" in
|
||||||
COLOR_B="$(echo "$STATE" | cut -d";" -f1 | cut -d"|" -f2)"
|
COLOR_B="$(echo "$STATE" | cut -d";" -f1 | cut -d"|" -f2)"
|
||||||
if [ "${COLOR_A:0:1}" == "!" ]; then
|
if [ "${COLOR_A:0:1}" == "!" ]; then
|
||||||
${COLOR_A:1} >/dev/null 2>&1 &
|
${COLOR_A:1} >/dev/null 2>&1 &
|
||||||
echo $! > ${TMPFILE_PID_BASE}_1_A
|
PID=$!
|
||||||
|
echo $PID > ${TMPFILE_PID_BASE}_1_A.$PID
|
||||||
else
|
else
|
||||||
for i in {1..5}; do (echo -en "$COLOR_A" > /dev/udp/172.23.92.15/49152 &); sleep .01; done
|
for i in {1..5}; do (echo -en "$COLOR_A" > /dev/udp/172.23.92.15/49152 &); sleep .1; done
|
||||||
fi
|
fi
|
||||||
if [ "${COLOR_B:0:1}" == "!" ]; then
|
if [ "${COLOR_B:0:1}" == "!" ]; then
|
||||||
(
|
(
|
||||||
|
@ -103,11 +97,11 @@ case "$ROOM_NUMBER" in
|
||||||
while true; do
|
while true; do
|
||||||
R1_=$(( RANDOM % 256 )); G1_=$(( RANDOM % 256 )); B1_=$(( RANDOM % 256 ))
|
R1_=$(( RANDOM % 256 )); G1_=$(( RANDOM % 256 )); B1_=$(( RANDOM % 256 ))
|
||||||
R2_=$(( RANDOM % 256 )); G2_=$(( RANDOM % 256 )); B2_=$(( RANDOM % 256 ))
|
R2_=$(( RANDOM % 256 )); G2_=$(( RANDOM % 256 )); B2_=$(( RANDOM % 256 ))
|
||||||
while [ $R1 -ne $R1_ -o $G1 -ne $G1_ -o $B1 -ne $B1_ -o $R2 -ne $R2_ -o $G2 -ne $G2_ -o $B2 -ne $B2_ ]; do
|
while [ $R1 -ne $R1_ -a $G1 -ne $G1_ -a $B1 -ne $B1_ -a $R2 -ne $R2_ -a $G2 -ne $G2_ -a $B2 -ne $B2_ ]; do
|
||||||
DR1=$(sign $(($R1_-$R1))); DG1=$(sign $(($G1_-$G1))); DB1=$(sign $(($B1_-$B1)))
|
DR1=$(sign $(($R1_-$R1))); DG1=$(sign $(($G1_-$G1))); DB1=$(sign $(($B1_-$B1)))
|
||||||
DR2=$(sign $(($R2_-$R2))); DG2=$(sign $(($G2_-$G2))); DB2=$(sign $(($B2_-$B2)))
|
DR2=$(sign $(($R2_-$R2))); DG2=$(sign $(($G2_-$G2))); DB2=$(sign $(($B2_-$B2)))
|
||||||
R1=$(($R1+$DR1)); G1=$(($G1+$DG1)); B1=$(($B1+$DB1)); R2=$(($R2+$DR2)); G2=$(($G2+$DG2)); B2=$(($B2+$DB2))
|
R1=$(($R1+$DR1)); G1=$(($G1+$DG1)); B1=$(($B1+$DB1)); R2=$(($R2+$DR2)); G2=$(($G2+$DG2)); B2=$(($B2+$DB2))
|
||||||
echo "$R1 $G1 $B1 $R2 $G2 $B2" |\
|
echo "${GAMMA_LUT[$R1]} ${GAMMA_LUT[$G1]} ${GAMMA_LUT[$B1]} ${GAMMA_LUT[$R2]} ${GAMMA_LUT[$G2]} ${GAMMA_LUT[$B2]}" |\
|
||||||
while read code; do printf "%03d" $code; done > /dev/udp/172.23.92.16/31302 &
|
while read code; do printf "%03d" $code; done > /dev/udp/172.23.92.16/31302 &
|
||||||
# echo -en "255204017255204017" > /dev/udp/172.23.92.16/31302 &
|
# echo -en "255204017255204017" > /dev/udp/172.23.92.16/31302 &
|
||||||
sleep .2
|
sleep .2
|
||||||
|
@ -117,7 +111,7 @@ case "$ROOM_NUMBER" in
|
||||||
PID=$!
|
PID=$!
|
||||||
echo $PID > ${TMPFILE_PID_BASE}_1_B.$PID
|
echo $PID > ${TMPFILE_PID_BASE}_1_B.$PID
|
||||||
else
|
else
|
||||||
for i in {1..5}; do (echo -en "$COLOR_B" > /dev/udp/172.23.92.16/31302 &); sleep .01; done
|
for i in {1..5}; do (echo -en "$COLOR_B" > /dev/udp/172.23.92.16/31302 &); sleep .1; done
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
|
@ -134,7 +128,7 @@ case "$ROOM_NUMBER" in
|
||||||
R=$(( RANDOM % 256 )); G=$(( RANDOM % 256 )); B=$(( RANDOM % 256 ))
|
R=$(( RANDOM % 256 )); G=$(( RANDOM % 256 )); B=$(( RANDOM % 256 ))
|
||||||
while true; do
|
while true; do
|
||||||
R_=$(( RANDOM % 256 )); G_=$(( RANDOM % 256 )); B_=$(( RANDOM % 256 ))
|
R_=$(( RANDOM % 256 )); G_=$(( RANDOM % 256 )); B_=$(( RANDOM % 256 ))
|
||||||
while [ $R -ne $R_ -o $G -ne $G_ -o $B -ne $B_ ]; do
|
while [ $R -ne $R_ -a $G -ne $G_ -a $B -ne $B_ ]; do
|
||||||
DR=$(sign $(($R_-$R))); DG=$(sign $(($G_-$G))); DB=$(sign $(($B_-$B)))
|
DR=$(sign $(($R_-$R))); DG=$(sign $(($G_-$G))); DB=$(sign $(($B_-$B)))
|
||||||
R=$(($R+$DR)); G=$((G+$DG)); B=$(($B+$DB))
|
R=$(($R+$DR)); G=$((G+$DG)); B=$(($B+$DB))
|
||||||
wget -q --timeout 3 -O- --input-file <(
|
wget -q --timeout 3 -O- --input-file <(
|
||||||
|
|
Loading…
Reference in New Issue