diff --git a/main.py b/main.py index 2594115..3f66cce 100644 --- a/main.py +++ b/main.py @@ -17,41 +17,47 @@ def main(args): new_state = args.state if new_state == "free": - client.publish("fabpel/%05d/clear" % int(args.fabpel), 0x00, qos=1) - time.sleep(0.5) - - client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\x00\xFF\x00", qos=1) + client.publish("fabpel/%05d/00002/static" % int(args.fabpel), b"\x00\xFF\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\x00\x00\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\x00\x00\xFF", qos=1) elif new_state == "inuse": - client.publish("fabpel/%05d/clear" % int(args.fabpel), 0x00, qos=1) - time.sleep(0.5) - - client.publish("fabpel/%05d/00002/static" % int(args.fabpel), b"\xFF\x00\x00", qos=1) + client.publish("fabpel/%05d/00002/pulse" % int(args.fabpel), b"\x00\xFF\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/pulse" % int(args.fabpel), b"\x00\xFF\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/pulse" % int(args.fabpel), b"\x00\xFF\x00", qos=1) elif new_state == "tocheck": - client.publish("fabpel/%05d/clear" % int(args.fabpel), 0x00, qos=1) - time.sleep(0.5) - - client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\xFF\xFF\x00", qos=1) + client.publish("fabpel/%05d/00002/blink" % int(args.fabpel), b"\xFF\xFF\xFF", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/blink" % int(args.fabpel), b"\xFF\xFF\xFF", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/blink" % int(args.fabpel), b"\xFF\xFF\xFF", qos=1) elif new_state == "blocked": - client.publish("fabpel/%05d/clear" % int(args.fabpel), 0x00, qos=1) - time.sleep(0.5) - - client.publish("fabpel/%05d/00000/pulse" % int(args.fabpel), b"\xFF\x00\x00", qos=1) - client.publish("fabpel/%05d/00001/pulse" % int(args.fabpel), b"\xFF\x00\x00", qos=1) - client.publish("fabpel/%05d/00002/pulse" % int(args.fabpel), b"\xFF\x00\x00", qos=1) + client.publish("fabpel/%05d/00002/static" % int(args.fabpel), b"\xFF\x00\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\x00\x00\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\x00\x00\xFF", qos=1) elif new_state == "disabled": - client.publish("fabpel/%05d/clear" % int(args.fabpel), 0x00, qos=1) - time.sleep(0.5) - - client.publish("fabpel/%05d/00000/pulse" % int(args.fabpel), b"\x00\x00\xFF", qos=1) - client.publish("fabpel/%05d/00001/pulse" % int(args.fabpel), b"\x00\x00\xFF", qos=1) - client.publish("fabpel/%05d/00002/pulse" % int(args.fabpel), b"\x00\x00\xFF", qos=1) + client.publish("fabpel/%05d/00002/static" % int(args.fabpel), b"\x00\x00\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\xFF\xFF\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\x00\x00\x00", qos=1) elif new_state == "reserved": - client.publish("fabpel/%05d/clear" % int(args.fabpel), 0x00, qos=1) - time.sleep(0.5) - - client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\xFF\xFF\x00", qos=1) - client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\xFF\xFF\x00", qos=1) - client.publish("fabpel/%05d/00002/static" % int(args.fabpel), b"\xFF\xFF\x00", qos=1) + client.publish("fabpel/%05d/00002/static" % int(args.fabpel), b"\xFF\xFF\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\x00\x00\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\x00\x00\xFF", qos=1) + elif new_state == "totakeover": + client.publish("fabpel/%05d/00002/blink" % int(args.fabpel), b"\x00\xFF\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00001/static" % int(args.fabpel), b"\x00\x00\x00", qos=1) + time.sleep(0.1) + client.publish("fabpel/%05d/00000/static" % int(args.fabpel), b"\x00\x00\xFF", qos=1) elif new_state == "raw": pass # Do nothing else: