def _decode_dispatch(self, p_pyhouse_obj, p_controller_obj): """Decode a message that was ACKed / NAked. see IDM pages 238-241 @return: a flag that is True for ACK and False for NAK/Invalid response. """ l_message = p_controller_obj._Message l_ret = False l_cmd = p_controller_obj._Message[1] # LOG.debug(' Dispatch: {:#02x}'.format(l_cmd)) if l_cmd == 0: LOG.warning("Found a '0' record ->{}.".format(FormatBytes(l_message))) return l_ret elif l_cmd == 0x50: l_ret = self._decode_0x50(p_controller_obj) elif l_cmd == 0x51: l_ret = self._decode_0x51(p_controller_obj) elif l_cmd == 0x52: l_ret = self._decode_0x52_record(p_controller_obj) elif l_cmd == 0x53: linkDecode.decode_0x53(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x54: linkDecode.decode_0x54(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x55: linkDecode.decode_0x55(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x56: linkDecode.decode_0x56(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x57: linkDecode.decode_0x57(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x58: linkDecode.decode_0x58(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x60: l_ret = self._decode_0x60_record(p_controller_obj) elif l_cmd == 0x61: l_ret = self._decode_0x61_record(p_controller_obj) elif l_cmd == 0x62: l_ret = self._decode_0x62_record(p_controller_obj) elif l_cmd == 0x64: linkDecode.decode_0x64(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x65: linkDecode.decode_0x65(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x69: linkDecode.decode_0x69(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x6A: linkDecode.decode_0x6A(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x6B: l_ret = self._decode_0x6B_record(p_controller_obj) elif l_cmd == 0x6C: linkDecode.decode_0x6C(p_pyhouse_obj, p_controller_obj) elif l_cmd == 0x6F: l_ret = self._decode_0x6F_record(p_controller_obj) elif l_cmd == 0x73: l_ret = self._decode_0x73_record(p_controller_obj) else: LOG.error("Unknown message {}, Cmd:{}".format(FormatBytes(p_controller_obj._Message), l_cmd)) # self.check_for_more_decoding(p_controller_obj, l_ret) self.check_for_more_decoding(p_controller_obj, l_ret) return l_ret