37 lines
682 B
Bash
Executable File
37 lines
682 B
Bash
Executable File
#!/bin/bash
|
|
|
|
TMPFILE=/tmp/light_state
|
|
touch $TMPFILE
|
|
LIGHT_STATE=$(cat $TMPFILE)
|
|
[ -z "$LIGHT_STATE" ] && LIGHT_STATE=0
|
|
|
|
STATE_0="a\x00\x03\x00\x00\x00;000000000000000000"
|
|
STATE_1="a\x00\x03\xff\xff\xff;255255255255255255"
|
|
STATE_2="n\x00\x02\x01\x00;170000070150000050"
|
|
|
|
LIGHT_STATE=$(( $LIGHT_STATE+1 ))
|
|
case $LIGHT_STATE in
|
|
0)
|
|
STATE=$STATE_0
|
|
;;
|
|
1)
|
|
STATE=$STATE_1
|
|
;;
|
|
2)
|
|
STATE=$STATE_2
|
|
;;
|
|
*)
|
|
STATE=$STATE_0
|
|
LIGHT_STATE=0
|
|
;;
|
|
esac
|
|
|
|
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";" -f2)" > /dev/udp/172.23.92.16/31302 &
|
|
|
|
sleep .01
|
|
done
|
|
|
|
echo $LIGHT_STATE > $TMPFILE
|