2015-09-17 02:27:11 +02:00
|
|
|
#!/usr/bin/env python2
|
|
|
|
|
2015-09-22 21:58:58 +02:00
|
|
|
import sys
|
|
|
|
|
2015-09-17 02:27:11 +02:00
|
|
|
from random import randint
|
|
|
|
from time import sleep
|
2015-09-22 21:58:58 +02:00
|
|
|
|
2015-09-22 21:13:49 +02:00
|
|
|
from twinklclient import TwinklSocket, TwinklMessage
|
2015-09-17 02:27:11 +02:00
|
|
|
|
|
|
|
HEIGHT = 8
|
|
|
|
WIDTH = 6
|
|
|
|
|
2015-09-22 21:13:49 +02:00
|
|
|
# As viewn from the inside
|
2015-09-17 02:27:11 +02:00
|
|
|
BOX_MAP = [
|
|
|
|
[357, 18, 369, 186, 249, 228, 51],
|
2015-09-26 23:41:01 +02:00
|
|
|
[279, 9, 57, 159, 300, 108, 204],
|
2015-09-17 02:27:11 +02:00
|
|
|
[261, 42, 183, 201, 273, 246, 15],
|
|
|
|
[306, 168, 24, 138, 309, 165, 39],
|
|
|
|
[258, 222, 87, 363, 291, 231, 243],
|
|
|
|
[252, 114, 180, 75, 282, 141, 033],
|
|
|
|
[264, 288, 120, 135, 255, 99, 105],
|
|
|
|
[285, 207, 102, 45, 297, 216, 63],
|
|
|
|
]
|
|
|
|
|
|
|
|
|
2015-09-22 21:13:49 +02:00
|
|
|
msg = TwinklMessage()
|
2015-09-17 02:27:11 +02:00
|
|
|
|
|
|
|
def set_box(x,y,r,g,b):
|
|
|
|
if x >= 0 and y >= 0 and x < WIDTH and y < HEIGHT:
|
|
|
|
base_address = BOX_MAP[y][x]
|
2015-09-22 21:13:49 +02:00
|
|
|
msg[base_address] = r
|
|
|
|
msg[base_address + 1] = g
|
|
|
|
msg[base_address + 2] = b
|
2015-09-17 02:27:11 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
2015-09-22 21:58:58 +02:00
|
|
|
if len(sys.argv) != 3:
|
|
|
|
print "Usage: %s host priority" % sys.argv[0]
|
|
|
|
sys.exit(1)
|
2015-09-17 02:27:11 +02:00
|
|
|
|
2015-09-22 21:58:58 +02:00
|
|
|
socket = TwinklSocket(sys.argv[1], "1337")
|
2015-09-22 21:13:49 +02:00
|
|
|
|
2015-09-22 21:58:58 +02:00
|
|
|
msg.set_priority(int(sys.argv[2]))
|
2015-09-17 02:27:11 +02:00
|
|
|
|
|
|
|
for x in range(0, WIDTH):
|
|
|
|
for y in range(0, HEIGHT):
|
|
|
|
set_box(x,y, 255, 255, 255)
|
|
|
|
|
|
|
|
|
2015-09-22 21:13:49 +02:00
|
|
|
socket.send(msg)
|
|
|
|
|
|
|
|
sleep(5)
|
|
|
|
|
|
|
|
msg.reset()
|
|
|
|
msg.set_priority(0)
|
|
|
|
socket.send(msg)
|
|
|
|
|
|
|
|
msg.destroy()
|
|
|
|
socket.close()
|
|
|
|
|