def list_status():
	output = list()
	for _, data in lifx.get(lifx.LightGet, lifx.LightState):
		output.append('{} ({})\n\tHue: {:.2f}%\n\tSaturation: {:.2f}%\n\tBrightness: {:.0f}%\n\tKelvin: {}K'.format(
		label(data[6]), 'On' if data[5] else 'Off',
		360 * d(data[0]), 100 * d(data[1]), 100 * d(data[2]), data[3]))
	print(*sorted(output), sep='\n\n')
Beispiel #2
0
def set_print():  # Set power with res_requested - NOTE: delay of set
    for (_, _, dev, *_), (power, ) in lifx.get(lifx.LightSetPower,
                                               lifx.LightStatePower,
                                               c(True),
                                               2000,
                                               res=1):
        print(MACstr(dev), ':', 'On' if power else 'Off')
Beispiel #3
0
def h1(sv, pv):
    global _dev
    if _dev is None:
        return

    # benchmark
    global _forward_set
    if deep_get(sv, "brightness.intent") == 0.1 and not _forward_set:
        resp, e = patch_spec(*_measure, {"obs": {"forward_leaf": time.time()}})
        if e is None:
            _forward_set = True

    status = lifx.get(_dev)
    power = status.get("power", 0)
    color = list(status.get("color", [1, 1, 1, 1]))

    p, b = deep_get(sv, "power.intent"), deep_get(sv, "brightness.intent")

    if p is not None:
        power = convert["power"]["to"](p)
    if b is not None:
        color[2] = convert["brightness"]["to"](b)

    # benchmark
    lifx.put(_dev, power, color)
Beispiel #4
0
def list_status():
    output = list()
    for _, data in lifx.get(lifx.LightGet, lifx.LightState):
        output.append(
            '{} ({})\n\tHue: {:.2f}%\n\tSaturation: {:.2f}%\n\tBrightness: {:.0f}%\n\tKelvin: {}K'
            .format(label(data[6]), 'On' if data[5] else 'Off',
                    360 * d(data[0]), 100 * d(data[1]), 100 * d(data[2]),
                    data[3]))
    print(*sorted(output), sep='\n\n')
Beispiel #5
0
    def run(self):
        while True:
            if self.stop_flag:
                break

            status = lifx.get(self.dev)
            if status is None:
                continue
            p, b = status.get("power", {}), status.get("color", {})[2]
            p, b = convert["power"]["from"](p), convert["brightness"]["from"](
                b)

            patch = {
                "control": {
                    "power": {
                        "status": p,
                    },
                    "brightness": {
                        "status": b,
                    },
                }
            }

            resp, e = patch_spec(*digi.auri, patch)
            if e is not None:
                logger.error(f"unable to update status {e}")

            # benchmark
            global _backward_set
            if b == 0.1 and not _backward_set:
                resp, e = patch_spec(*_measure,
                                     {"obs": {
                                         "backward_leaf": time.time()
                                     }})
                if e is None:
                    _backward_set = True

            time.sleep(self.interval)
def set_print(): # Set power with res_requested - NOTE: delay of set
	for (_, _, dev, *_), (power,) in lifx.get(lifx.LightSetPower, lifx.LightStatePower, c(True), 2000, res=1):
		print(MACstr(dev), ':', 'On' if power else 'Off')
def toggle_power():
	for (_, _, dev, *_), (power,) in lifx.get(lifx.LightGetPower, lifx.LightStatePower):
		lifx.post(lifx.LightSetPower, c(1 - d(power)), 0, device=dev)
def power_status():
	for (_, _, dev, *_), (power,) in lifx.get(lifx.LightGetPower, lifx.LightStatePower):
		print(MACstr(dev), ':', 'On' if power else 'Off')
def list_devices():
	for (_, _, dev, *_), (service, _) in lifx.get(lifx.GetService, lifx.StateService):
		if service == 1:
			print(MACstr(dev))
Beispiel #10
0
def toggle_power():
    for (_, _, dev, *_), (power, ) in lifx.get(lifx.LightGetPower,
                                               lifx.LightStatePower):
        lifx.post(lifx.LightSetPower, c(1 - d(power)), 0, device=dev)
Beispiel #11
0
def power_status():
    for (_, _, dev, *_), (power, ) in lifx.get(lifx.LightGetPower,
                                               lifx.LightStatePower):
        print(MACstr(dev), ':', 'On' if power else 'Off')
Beispiel #12
0
def list_devices():
    for (_, _, dev, *_), (service, _) in lifx.get(lifx.GetService,
                                                  lifx.StateService):
        if service == 1:
            print(MACstr(dev))