def get_status(self): packet = lakeside_proto.T1012Packet() packet.sequence = self.get_sequence() packet.code = self.code packet.bulbinfo.type = 1 response = self.send_packet(packet, True) return response
def get_sequence(self): packet = lakeside_proto.T1012Packet() packet.sequence = random.randrange(3000000) packet.code = self.code packet.ping.type = 0 response = self.send_packet(packet, True) return response.sequence + 1
def set_state(self, power=None, brightness=None, temperature=None, colors=None): if self.kind == "T1011" or self.kind == "T1012": packet = lakeside_proto.T1012Packet() packet.bulbinfo.type = 0 packet.bulbinfo.packet.unknown1 = 100 packet.bulbinfo.packet.bulbset.command = 7 if power != None: self.power = power packet.bulbinfo.packet.bulbset.power = power if brightness != None: self.brightness = brightness packet.bulbinfo.packet.bulbset.values.brightness = brightness if temperature != None: self.temperature = temperature packet.bulbinfo.packet.bulbset.values.temperature = temperature else: self.colors = colors packet = lakeside_proto.T1013Packet() packet.bulbinfo.type = 0 packet.bulbinfo.packet.unknown1 = 10 packet.bulbinfo.packet.control.command = 7 if power != None: self.power = power packet.bulbinfo.packet.control.power = power if colors != None: packet.bulbinfo.packet.control.color = 1 packet.bulbinfo.packet.control.colors.red = colors[0] packet.bulbinfo.packet.control.colors.green = colors[1] packet.bulbinfo.packet.control.colors.blue = colors[2] if brightness != None: self.brightness = brightness packet.bulbinfo.packet.control.colors.brightness = brightness else: packet.bulbinfo.packet.control.color = 0 if brightness != None: self.brightness = brightness packet.bulbinfo.packet.control.values.brightness = brightness if temperature != None: self.temperature = temperature packet.bulbinfo.packet.control.values.temperatre = temperature packet.sequence = self.get_sequence() packet.code = self.code self.send_packet(packet, False)