def _read_insteon(p_in_xml): l_insteon_obj = InsteonData() try: l_insteon_obj.InsteonAddress = conversions.dotted_hex2int(PutGetXML.get_text_from_xml(p_in_xml, 'InsteonAddress', '99.88.77')) except AttributeError: l_insteon_obj.InsteonAddress = conversions.dotted_hex2int(PutGetXML.get_text_from_xml(p_in_xml, 'Address', '99.88.77')) try: l_insteon_obj.DevCat = conversions.dotted_hex2int(PutGetXML.get_text_from_xml(p_in_xml, 'DevCat', 'A1.B2')) l_insteon_obj.GroupList = PutGetXML.get_text_from_xml(p_in_xml, 'GroupList') l_insteon_obj.GroupNumber = PutGetXML.get_int_from_xml(p_in_xml, 'GroupNumber', 0) l_insteon_obj.ProductKey = Xml._read_product_key(p_in_xml) l_insteon_obj.Version = PutGetXML.get_int_from_xml(p_in_xml, 'Version', 1) except Exception as e_err: LOG.error('ERROR: {}'.format(e_err)) return l_insteon_obj