def __init__(self, address, statename, group, send_message_method, message_callbacks, defaultvalue=None): """Initialize the State state.""" super().__init__(address, statename, group, send_message_method, message_callbacks, defaultvalue) template_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None)) template_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None)) template_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) self._message_callbacks.add(template_broadcast, self._sensor_state_received) self._message_callbacks.add(template_cleanup, self._sensor_state_received) self._message_callbacks.add(template_group, self._sensor_state_received)
def _register_messages(self): mode_status_msg = StandardReceive.template( commandtuple=COMMAND_THERMOSTAT_MODE_STATUS_0X70_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE, None), ) mode_change_fan_on_ack = StandardReceive.template( commandtuple=COMMAND_THERMOSTAT_CONTROL_ON_FAN_0X6B_0X07, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE_ACK), ) mode_change_fan_auto_ack = StandardReceive.template( commandtuple=COMMAND_THERMOSTAT_CONTROL_OFF_FAN_0X6B_0X08, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE_ACK), ) mode_change_off_ack = StandardReceive.template( commandtuple=COMMAND_THERMOSTAT_CONTROL_OFF_ALL_0X6B_0X09, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE_ACK), ) ext_status_recd = ExtendedReceive.template( commandtuple=COMMAND_EXTENDED_GET_SET_0X2E_0X00, cmd2=0x02, userdata=Userdata.template({"d1": 0x01}), ) self._message_callbacks.add(mode_status_msg, self._status_received) self._message_callbacks.add(mode_change_fan_on_ack, self._mode_change_ack) self._message_callbacks.add(mode_change_fan_auto_ack, self._mode_change_ack) self._message_callbacks.add(mode_change_off_ack, self._mode_change_ack) self._message_callbacks.add(ext_status_recd, self._ext_status_received)
def _register_messages(self): # The actual group number is 0x01 for the IOLinc sensor so this # is hard coded in these template messages template_close_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=0x01) template_open_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=0x01) template_close_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, 0x01]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_open_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, 0x01]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) self._message_callbacks.add(template_open_cleanup, self._open_message_received) self._message_callbacks.add(template_close_cleanup, self._close_message_received) self._message_callbacks.add(template_open_group, self._open_message_received) self._message_callbacks.add(template_close_group, self._close_message_received)
def __init__( self, address, statename, group, send_message_method, message_callbacks, defaultvalue=None, ): """Init the State state.""" super().__init__( address, statename, group, send_message_method, message_callbacks, defaultvalue, ) self._is_responder = False template_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None), cmd2=None, ) template_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None), cmd2=None, ) template_on_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) template_off_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) self._message_callbacks.add(template_on_broadcast, self._sensor_on_command_received) self._message_callbacks.add(template_off_broadcast, self._sensor_off_command_received) self._message_callbacks.add(template_on_group, self._sensor_on_command_received) self._message_callbacks.add(template_off_group, self._sensor_off_command_received)
def __init__( self, address, statename, group, send_message_method, message_callbacks, defaultvalue=None, dry_wet=None, ): """Init the LeakSensorDry state.""" super().__init__( address, statename, group, send_message_method, message_callbacks, defaultvalue, ) self._dry_wet_type = dry_wet self._dry_wet_callbacks = [] template_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None), ) template_all_link = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), ) template_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), ) self._message_callbacks.add(template_broadcast, self._dry_wet_message_received) self._message_callbacks.add(template_all_link, self._dry_wet_message_received) self._message_callbacks.add(template_cleanup, self._dry_wet_message_received)
def _register_messages(self): _LOGGER.debug('Starting HeatSetPoint register_messages') heat_set_point_status = StandardReceive.template( address=self._address, commandtuple=COMMAND_THERMOSTAT_HEAT_SET_POINT_STATUS_0X72_NONE, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE, False)) self._message_callbacks.add(heat_set_point_status, self._status_message_received) ext_status_recd = ExtendedReceive.template( commandtuple=COMMAND_EXTENDED_GET_SET_0X2E_0X00, cmd2=0x02, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE, True), userdata=Userdata.template({"d1": 0x01})) _LOGGER.debug('Reg Ext Status: %s', ext_status_recd) self._message_callbacks.add(ext_status_recd, self._ext_status_received)
def _register_messages(self): ext_msg_aldb_record = ExtendedReceive.template( address=self._address, commandtuple=COMMAND_EXTENDED_READ_WRITE_ALDB_0X2F_0X00, userdata=Userdata.template({'d2': 1}), flags=MessageFlags.template( messageType=MESSAGE_TYPE_DIRECT_MESSAGE, extended=1)) std_msg_pre_nak = StandardReceive.template(flags=MessageFlags.template( messageType=MESSAGE_FLAG_DIRECT_MESSAGE_NAK_0XA0), cmd2=0xfc) ext_msg_pre_nak = ExtendedReceive.template(flags=MessageFlags.template( messageType=MESSAGE_FLAG_DIRECT_MESSAGE_NAK_0XA0), cmd2=0xfc) self._message_callbacks.add(ext_msg_aldb_record, self._handle_aldb_record_received) self._message_callbacks.add(std_msg_pre_nak, self._handle_pre_nak) self._message_callbacks.add(ext_msg_pre_nak, self._handle_pre_nak)
def _register_messages(self): temp_msg = StandardReceive.template( commandtuple=COMMAND_THERMOSTAT_TEMPERATURE_STATUS_0X6E_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE, None)) self._message_callbacks.add(temp_msg, self._temp_received) ext_status_recd = ExtendedReceive.template( commandtuple=COMMAND_EXTENDED_GET_SET_0X2E_0X00, cmd2=0x02, userdata=Userdata.template({"d1": 0x01})) self._message_callbacks.add(ext_status_recd, self._ext_status_received)
def _register_messages(self): cool_set_point_status = StandardReceive.template( address=self._address, commandtuple=COMMAND_THERMOSTAT_COOL_SET_POINT_STATUS_0X71_NONE, flags=MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE, False)) self._message_callbacks.add(cool_set_point_status, self._status_message_received) ext_status_recd = ExtendedReceive.template( commandtuple=COMMAND_EXTENDED_GET_SET_0X2E_0X00, cmd2=0x02, userdata=Userdata.template({"d1": 0x01})) self._message_callbacks.add(ext_status_recd, self._ext_status_received)
def __init__(self, address, statename, group, send_message_method, message_callbacks, defaultvalue=None): """Initialize the IoLinkSensor.""" super().__init__(address, statename, group, send_message_method, message_callbacks, defaultvalue) self._updatemethod = self._send_status_request template_open_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None)) template_close_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None), cmd2=None) template_open_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None)) template_close_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_open_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=self._group) template_close_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=self._group) self._message_callbacks.add(template_open_broadcast, self._open_message_received) self._message_callbacks.add(template_close_broadcast, self._close_message_received) self._message_callbacks.add(template_open_cleanup, self._open_message_received) self._message_callbacks.add(template_close_cleanup, self._close_message_received) self._message_callbacks.add(template_open_group, self._open_message_received) self._message_callbacks.add(template_close_group, self._close_message_received)
def _register_messages(self): template_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_on_fast_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_off_fast_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_STOP_MANUAL_CHANGE_0X18_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_instant_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_INSTANT_CHANGE_0X21_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) self._message_callbacks.add(template_on_broadcast, self._on_message_received) self._message_callbacks.add(template_on_fast_broadcast, self._on_message_received) self._message_callbacks.add(template_off_broadcast, self._off_message_received) self._message_callbacks.add(template_off_fast_broadcast, self._off_message_received) self._message_callbacks.add(template_manual_broadcast, self._manual_change_received) self._message_callbacks.add(template_instant_broadcast, self._manual_change_received) self._message_callbacks.add(template_manual_off_broadcast, self._manual_change_received) self._message_callbacks.add(template_manual_on_broadcast, self._manual_change_received)
def __init__(self, address, statename, group, send_message_method, message_callbacks, defaultvalue=None): """Initalize the DimmableSwitch Class.""" super().__init__(address, statename, group, send_message_method, message_callbacks, defaultvalue) self._updatemethod = self._send_status_request self.log.debug('Registering callbacks for DimmableSwitch device %s', self._address.human) template_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None)) template_on_fast_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None)) template_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_off_fast_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_manual_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_STOP_MANUAL_CHANGE_0X18_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_instant_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_INSTANT_CHANGE_0X21_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_manual_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_manual_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=None) template_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_on_fast_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_off_fast_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_STOP_MANUAL_CHANGE_0X18_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_instant_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_INSTANT_CHANGE_0X21_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) self._message_callbacks.add(template_on_cleanup, self._on_message_received) self._message_callbacks.add(template_on_fast_cleanup, self._on_message_received) self._message_callbacks.add(template_off_cleanup, self._off_message_received) self._message_callbacks.add(template_off_fast_cleanup, self._off_message_received) self._message_callbacks.add(template_manual_cleanup, self._manual_change_received) self._message_callbacks.add(template_instant_cleanup, self._manual_change_received) self._message_callbacks.add(template_manual_off_cleanup, self._manual_change_received) self._message_callbacks.add(template_manual_on_cleanup, self._manual_change_received) self._message_callbacks.add(template_on_broadcast, self._on_message_received) self._message_callbacks.add(template_on_fast_broadcast, self._on_message_received) self._message_callbacks.add(template_off_broadcast, self._off_message_received) self._message_callbacks.add(template_off_fast_broadcast, self._off_message_received) self._message_callbacks.add(template_manual_broadcast, self._manual_change_received) self._message_callbacks.add(template_instant_broadcast, self._manual_change_received) self._message_callbacks.add(template_manual_off_broadcast, self._manual_change_received) self._message_callbacks.add(template_manual_on_broadcast, self._manual_change_received)
def _register_messages(self): """Register messages to listen for.""" template_on_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_fast_on_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None)) template_off_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_fast_off_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_on_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_manual_off_group = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None) template_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group) template_fast_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group) template_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group) template_fast_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group) template_manual_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group) template_manual_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group) self._message_callbacks.add(template_on_group, self._on_message_received) self._message_callbacks.add(template_fast_on_group, self._on_message_received) self._message_callbacks.add(template_off_group, self._off_message_received) self._message_callbacks.add(template_fast_off_group, self._off_message_received) self._message_callbacks.add(template_manual_on_group, self._manual_change_received) self._message_callbacks.add(template_manual_off_group, self._manual_change_received) self._message_callbacks.add(template_on_cleanup, self._on_message_received) self._message_callbacks.add(template_fast_on_cleanup, self._on_message_received) self._message_callbacks.add(template_off_cleanup, self._off_message_received) self._message_callbacks.add(template_fast_off_cleanup, self._off_message_received) self._message_callbacks.add(template_manual_on_cleanup, self._manual_change_received) self._message_callbacks.add(template_manual_off_cleanup, self._manual_change_received)
def test_eq(): """Test comarision for equality.""" flag1 = MessageFlags(0x80) flag2 = MessageFlags(0x25) flag3 = MessageFlags(0x27) flag4 = MessageFlags(0x16) flag5 = MessageFlags(0x37) flag6 = MessageFlags(0x6f) pattern1 = MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, 0) pattern2 = MessageFlags.template(MESSAGE_TYPE_BROADCAST_MESSAGE, None) pattern3 = MessageFlags.template(None, 0) pattern4 = MessageFlags.template(None, 1) pattern5 = MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE_ACK, 0) pattern6 = MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE_ACK, 1) pattern7 = MessageFlags.template(MESSAGE_TYPE_DIRECT_MESSAGE_ACK, None) assert flag1.matches_pattern(pattern1) assert not flag2.matches_pattern(pattern1) assert not flag3.matches_pattern(pattern1) assert not flag4.matches_pattern(pattern1) assert not flag5.matches_pattern(pattern1) assert not flag6.matches_pattern(pattern1) assert flag1.matches_pattern(pattern2) assert not flag2.matches_pattern(pattern2) assert not flag3.matches_pattern(pattern2) assert not flag4.matches_pattern(pattern2) assert not flag5.matches_pattern(pattern2) assert not flag6.matches_pattern(pattern2) assert flag1.matches_pattern(pattern3) assert flag2.matches_pattern(pattern3) assert flag3.matches_pattern(pattern3) assert not flag4.matches_pattern(pattern3) assert not flag5.matches_pattern(pattern3) assert flag6.matches_pattern(pattern3) assert not flag1.matches_pattern(pattern4) assert not flag2.matches_pattern(pattern4) assert not flag3.matches_pattern(pattern4) assert flag4.matches_pattern(pattern4) assert flag5.matches_pattern(pattern4) assert not flag6.matches_pattern(pattern4) assert not flag1.matches_pattern(pattern5) assert flag2.matches_pattern(pattern5) assert flag3.matches_pattern(pattern5) assert not flag4.matches_pattern(pattern5) assert not flag5.matches_pattern(pattern5) assert not flag6.matches_pattern(pattern5) assert not flag1.matches_pattern(pattern6) assert not flag2.matches_pattern(pattern6) assert not flag3.matches_pattern(pattern6) assert not flag4.matches_pattern(pattern6) assert flag5.matches_pattern(pattern6) assert not flag6.matches_pattern(pattern6) assert not flag1.matches_pattern(pattern7) assert flag2.matches_pattern(pattern7) assert flag3.matches_pattern(pattern7) assert not flag4.matches_pattern(pattern7) assert flag5.matches_pattern(pattern7) assert not flag6.matches_pattern(pattern7)
def _register_messages(self): _LOGGER.debug("Registering callbacks for DimmableSwitch device %s", self._address.human) template_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_on_fast_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_off_fast_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_manual_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_STOP_MANUAL_CHANGE_0X18_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_instant_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_INSTANT_CHANGE_0X21_NONE, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_manual_off_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_manual_on_cleanup = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_CLEANUP, None), cmd2=self._group, ) template_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_0X11_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), ) template_on_fast_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_ON_FAST_0X12_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), ) template_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_0X13_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) template_off_fast_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_OFF_FAST_0X14_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) template_manual_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_STOP_MANUAL_CHANGE_0X18_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) template_instant_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_INSTANT_CHANGE_0X21_NONE, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) template_manual_off_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_OFF_0X22_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) template_manual_on_broadcast = StandardReceive.template( commandtuple=COMMAND_LIGHT_MANUALLY_TURNED_ON_0X23_0X00, address=self._address, target=bytearray([0x00, 0x00, self._group]), flags=MessageFlags.template(MESSAGE_TYPE_ALL_LINK_BROADCAST, None), cmd2=None, ) self._message_callbacks.add(template_on_cleanup, self._manual_change_received) self._message_callbacks.add(template_on_fast_cleanup, self._manual_change_received) self._message_callbacks.add(template_off_cleanup, self._manual_change_received) self._message_callbacks.add(template_off_fast_cleanup, self._manual_change_received) self._message_callbacks.add(template_manual_cleanup, self._manual_change_received) self._message_callbacks.add(template_instant_cleanup, self._manual_change_received) self._message_callbacks.add(template_manual_off_cleanup, self._manual_change_received) self._message_callbacks.add(template_manual_on_cleanup, self._manual_change_received) self._message_callbacks.add(template_on_broadcast, self._on_message_received) self._message_callbacks.add(template_on_fast_broadcast, self._on_message_received) self._message_callbacks.add(template_off_broadcast, self._off_message_received) self._message_callbacks.add(template_off_fast_broadcast, self._off_message_received) self._message_callbacks.add(template_manual_broadcast, self._manual_change_received) self._message_callbacks.add(template_instant_broadcast, self._manual_change_received) self._message_callbacks.add(template_manual_off_broadcast, self._manual_change_received) self._message_callbacks.add(template_manual_on_broadcast, self._manual_change_received)