refactor for avaoid multiple names
This commit is contained in:
		
							parent
							
								
									1fec40d0b8
								
							
						
					
					
						commit
						01f8ea34f2
					
				| @ -1,120 +1,122 @@ | ||||
| from dsmr_parser import obis_references as obis | ||||
| 
 | ||||
| """ | ||||
| ''' | ||||
| dsmr_parser.obis_name_mapping | ||||
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||||
| 
 | ||||
| This module contains a mapping of obis references to names. | ||||
| """ | ||||
| ''' | ||||
| 
 | ||||
| EN = { | ||||
|     obis.P1_MESSAGE_HEADER: 'P1_MESSAGE_HEADER', | ||||
|     obis.P1_MESSAGE_TIMESTAMP: 'P1_MESSAGE_TIMESTAMP', | ||||
|     obis.ELECTRICITY_IMPORTED_TOTAL: 'ELECTRICITY_IMPORTED_TOTAL', | ||||
|     obis.ELECTRICITY_REACTIVE_IMPORTED_TOTAL: 'ELECTRICITY_REACTIVE_IMPORTED_TOTAL', | ||||
|     obis.ELECTRICITY_USED_TARIFF_1: 'ELECTRICITY_USED_TARIFF_1', | ||||
|     obis.ELECTRICITY_USED_TARIFF_2: 'ELECTRICITY_USED_TARIFF_2', | ||||
|     obis.ELECTRICITY_EXPORTED_TOTAL: 'ELECTRICITY_EXPORTED_TOTAL', | ||||
|     obis.ELECTRICITY_REACTIVE_EXPORTED_TOTAL: 'ELECTRICITY_REACTIVE_EXPORTED_TOTAL', | ||||
|     obis.ELECTRICITY_DELIVERED_TARIFF_1: 'ELECTRICITY_DELIVERED_TARIFF_1', | ||||
|     obis.ELECTRICITY_DELIVERED_TARIFF_2: 'ELECTRICITY_DELIVERED_TARIFF_2', | ||||
|     obis.ELECTRICITY_ACTIVE_TARIFF: 'ELECTRICITY_ACTIVE_TARIFF', | ||||
|     obis.CURRENT_REACTIVE_EXPORTED: 'CURRENT_REACTIVE_EXPORTED', | ||||
|     obis.ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1: 'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1', | ||||
|     obis.ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2: 'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2', | ||||
|     obis.ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1: 'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1', | ||||
|     obis.ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2: 'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2', | ||||
|     obis.CURRENT_REACTIVE_IMPORTED: 'CURRENT_REACTIVE_IMPORTED', | ||||
|     obis.EQUIPMENT_IDENTIFIER: 'EQUIPMENT_IDENTIFIER', | ||||
|     obis.CURRENT_ELECTRICITY_USAGE: 'CURRENT_ELECTRICITY_USAGE', | ||||
|     obis.CURRENT_ELECTRICITY_DELIVERY: 'CURRENT_ELECTRICITY_DELIVERY', | ||||
|     obis.LONG_POWER_FAILURE_COUNT: 'LONG_POWER_FAILURE_COUNT', | ||||
|     obis.SHORT_POWER_FAILURE_COUNT: 'SHORT_POWER_FAILURE_COUNT', | ||||
|     obis.POWER_EVENT_FAILURE_LOG: 'POWER_EVENT_FAILURE_LOG', | ||||
|     obis.VOLTAGE_SAG_L1_COUNT: 'VOLTAGE_SAG_L1_COUNT', | ||||
|     obis.VOLTAGE_SAG_L2_COUNT: 'VOLTAGE_SAG_L2_COUNT', | ||||
|     obis.VOLTAGE_SAG_L3_COUNT: 'VOLTAGE_SAG_L3_COUNT', | ||||
|     obis.VOLTAGE_SWELL_L1_COUNT: 'VOLTAGE_SWELL_L1_COUNT', | ||||
|     obis.VOLTAGE_SWELL_L2_COUNT: 'VOLTAGE_SWELL_L2_COUNT', | ||||
|     obis.VOLTAGE_SWELL_L3_COUNT: 'VOLTAGE_SWELL_L3_COUNT', | ||||
|     obis.INSTANTANEOUS_VOLTAGE_L1: 'INSTANTANEOUS_VOLTAGE_L1', | ||||
|     obis.INSTANTANEOUS_VOLTAGE_L2: 'INSTANTANEOUS_VOLTAGE_L2', | ||||
|     obis.INSTANTANEOUS_VOLTAGE_L3: 'INSTANTANEOUS_VOLTAGE_L3', | ||||
|     obis.INSTANTANEOUS_CURRENT_L1: 'INSTANTANEOUS_CURRENT_L1', | ||||
|     obis.INSTANTANEOUS_CURRENT_L2: 'INSTANTANEOUS_CURRENT_L2', | ||||
|     obis.INSTANTANEOUS_CURRENT_L3: 'INSTANTANEOUS_CURRENT_L3', | ||||
|     obis.TEXT_MESSAGE_CODE: 'TEXT_MESSAGE_CODE', | ||||
|     obis.TEXT_MESSAGE: 'TEXT_MESSAGE', | ||||
|     obis.DEVICE_TYPE: 'DEVICE_TYPE', | ||||
|     obis.INSTANTANEOUS_ACTIVE_POWER_L1_POSITIVE: 'INSTANTANEOUS_ACTIVE_POWER_L1_POSITIVE', | ||||
|     obis.INSTANTANEOUS_ACTIVE_POWER_L2_POSITIVE: 'INSTANTANEOUS_ACTIVE_POWER_L2_POSITIVE', | ||||
|     obis.INSTANTANEOUS_ACTIVE_POWER_L3_POSITIVE: 'INSTANTANEOUS_ACTIVE_POWER_L3_POSITIVE', | ||||
|     obis.INSTANTANEOUS_ACTIVE_POWER_L1_NEGATIVE: 'INSTANTANEOUS_ACTIVE_POWER_L1_NEGATIVE', | ||||
|     obis.INSTANTANEOUS_ACTIVE_POWER_L2_NEGATIVE: 'INSTANTANEOUS_ACTIVE_POWER_L2_NEGATIVE', | ||||
|     obis.INSTANTANEOUS_ACTIVE_POWER_L3_NEGATIVE: 'INSTANTANEOUS_ACTIVE_POWER_L3_NEGATIVE', | ||||
|     obis.INSTANTANEOUS_REACTIVE_POWER_L1_POSITIVE: 'INSTANTANEOUS_REACTIVE_POWER_L1_POSITIVE', | ||||
|     obis.INSTANTANEOUS_REACTIVE_POWER_L1_NEGATIVE: 'INSTANTANEOUS_REACTIVE_POWER_L1_NEGATIVE', | ||||
|     obis.INSTANTANEOUS_REACTIVE_POWER_L2_POSITIVE: 'INSTANTANEOUS_REACTIVE_POWER_L2_POSITIVE', | ||||
|     obis.INSTANTANEOUS_REACTIVE_POWER_L2_NEGATIVE: 'INSTANTANEOUS_REACTIVE_POWER_L2_NEGATIVE', | ||||
|     obis.INSTANTANEOUS_REACTIVE_POWER_L3_POSITIVE: 'INSTANTANEOUS_REACTIVE_POWER_L3_POSITIVE', | ||||
|     obis.INSTANTANEOUS_REACTIVE_POWER_L3_NEGATIVE: 'INSTANTANEOUS_REACTIVE_POWER_L3_NEGATIVE', | ||||
|     obis.EQUIPMENT_IDENTIFIER_GAS: 'EQUIPMENT_IDENTIFIER_GAS', | ||||
|     obis.HOURLY_GAS_METER_READING: 'HOURLY_GAS_METER_READING', | ||||
|     obis.GAS_METER_READING: 'GAS_METER_READING', | ||||
|     obis.ACTUAL_TRESHOLD_ELECTRICITY: 'ACTUAL_TRESHOLD_ELECTRICITY', | ||||
|     obis.ACTUAL_SWITCH_POSITION: 'ACTUAL_SWITCH_POSITION', | ||||
|     obis.VALVE_POSITION_GAS: 'VALVE_POSITION_GAS', | ||||
|     obis.BELGIUM_VERSION_INFORMATION: 'BELGIUM_VERSION_INFORMATION', | ||||
|     obis.BELGIUM_EQUIPMENT_IDENTIFIER: 'BELGIUM_EQUIPMENT_IDENTIFIER', | ||||
|     obis.BELGIUM_CURRENT_AVERAGE_DEMAND: 'BELGIUM_CURRENT_AVERAGE_DEMAND', | ||||
|     obis.BELGIUM_MAXIMUM_DEMAND_MONTH: 'BELGIUM_MAXIMUM_DEMAND_MONTH', | ||||
|     obis.BELGIUM_MAXIMUM_DEMAND_13_MONTHS: 'BELGIUM_MAXIMUM_DEMAND_13_MONTHS', | ||||
|     obis.BELGIUM_MAX_POWER_PER_PHASE: 'BELGIUM_MAX_POWER_PER_PHASE', | ||||
|     obis.BELGIUM_MAX_CURRENT_PER_PHASE: 'BELGIUM_MAX_CURRENT_PER_PHASE', | ||||
|     obis.BELGIUM_MBUS1_DEVICE_TYPE: 'BELGIUM_MBUS1_DEVICE_TYPE', | ||||
|     obis.BELGIUM_MBUS1_EQUIPMENT_IDENTIFIER: 'BELGIUM_MBUS1_EQUIPMENT_IDENTIFIER', | ||||
|     obis.BELGIUM_MBUS1_VALVE_POSITION: 'BELGIUM_MBUS1_VALVE_POSITION', | ||||
|     obis.BELGIUM_MBUS1_METER_READING1: 'BELGIUM_MBUS1_METER_READING1', | ||||
|     obis.BELGIUM_MBUS1_METER_READING2: 'BELGIUM_MBUS1_METER_READING2', | ||||
|     obis.BELGIUM_MBUS2_EQUIPMENT_IDENTIFIER: 'BELGIUM_MBUS2_EQUIPMENT_IDENTIFIER', | ||||
|     obis.BELGIUM_MBUS2_VALVE_POSITION: 'BELGIUM_MBUS2_VALVE_POSITION', | ||||
|     obis.BELGIUM_MBUS2_METER_READING1: 'BELGIUM_MBUS2_METER_READING1', | ||||
|     obis.BELGIUM_MBUS2_METER_READING2: 'BELGIUM_MBUS2_METER_READING2', | ||||
|     obis.BELGIUM_MBUS3_EQUIPMENT_IDENTIFIER: 'BELGIUM_MBUS3_EQUIPMENT_IDENTIFIER', | ||||
|     obis.BELGIUM_MBUS3_VALVE_POSITION: 'BELGIUM_MBUS3_VALVE_POSITION', | ||||
|     obis.BELGIUM_MBUS3_METER_READING1: 'BELGIUM_MBUS3_METER_READING1', | ||||
|     obis.BELGIUM_MBUS3_METER_READING2: 'BELGIUM_MBUS3_METER_READING2', | ||||
|     obis.BELGIUM_MBUS4_EQUIPMENT_IDENTIFIER: 'BELGIUM_MBUS4_EQUIPMENT_IDENTIFIER', | ||||
|     obis.BELGIUM_MBUS4_VALVE_POSITION: 'BELGIUM_MBUS4_VALVE_POSITION', | ||||
|     obis.BELGIUM_MBUS4_METER_READING1: 'BELGIUM_MBUS4_METER_READING1', | ||||
|     obis.BELGIUM_MBUS4_METER_READING2: 'BELGIUM_MBUS4_METER_READING2', | ||||
|     obis.LUXEMBOURG_EQUIPMENT_IDENTIFIER: 'LUXEMBOURG_EQUIPMENT_IDENTIFIER', | ||||
|     obis.Q3D_EQUIPMENT_IDENTIFIER: 'Q3D_EQUIPMENT_IDENTIFIER', | ||||
|     obis.Q3D_EQUIPMENT_STATE: 'Q3D_EQUIPMENT_STATE', | ||||
|     obis.Q3D_EQUIPMENT_SERIALNUMBER: 'Q3D_EQUIPMENT_SERIALNUMBER', | ||||
|     obis.BELGIUM_MBUS2_DEVICE_TYPE: 'BELGIUM_MBUS2_DEVICE_TYPE', | ||||
|     obis.EON_HU_ELECTRICITY_DELIVERED_TARIFF_3: 'EON_HU_ELECTRICITY_DELIVERED_TARIFF_3', | ||||
|     obis.EON_HU_ELECTRICITY_DELIVERED_TARIFF_4: 'EON_HU_ELECTRICITY_DELIVERED_TARIFF_4', | ||||
|     obis.EON_HU_ELECTRICITY_USED_TARIFF_3: 'EON_HU_ELECTRICITY_USED_TARIFF_3', | ||||
|     obis.EON_HU_ELECTRICITY_USED_TARIFF_4: 'EON_HU_ELECTRICITY_USED_TARIFF_4', | ||||
|     obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q1: 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q1', | ||||
|     obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q2: 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q2', | ||||
|     obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q3: 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q3', | ||||
|     obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q4: 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q4', | ||||
|     obis.EON_HU_ELECTRICITY_COMBINED: 'EON_HU_ELECTRICITY_COMBINED', | ||||
|     obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_TOTAL: 'EON_HU_INSTANTANEOUS_POWER_FACTOR_TOTAL', | ||||
|     obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L1: 'EON_HU_INSTANTANEOUS_POWER_FACTOR_L1', | ||||
|     obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L2: 'EON_HU_INSTANTANEOUS_POWER_FACTOR_L2', | ||||
|     obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L3: 'EON_HU_INSTANTANEOUS_POWER_FACTOR_L3', | ||||
|     obis.EON_HU_FREQUENCY: 'EON_HU_FREQUENCY', | ||||
|     obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q1: 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q1', | ||||
|     obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q2: 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q2', | ||||
|     obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q3: 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q3', | ||||
|     obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q4: 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q4', | ||||
|     obis.EON_HU_MAX_POWER_ON_L1: 'EON_HU_MAX_POWER_ON_L1', | ||||
|     obis.EON_HU_MAX_POWER_ON_L2: 'EON_HU_MAX_POWER_ON_L2', | ||||
|     obis.EON_HU_MAX_POWER_ON_L3: 'EON_HU_MAX_POWER_ON_L3', | ||||
|     obis.EON_HU_LAST_MONTH_DATA: 'EON_HU_LAST_MONTH_DATA' | ||||
|     'P1_MESSAGE_HEADER': 'P1_MESSAGE_HEADER', | ||||
|     'P1_MESSAGE_TIMESTAMP': 'P1_MESSAGE_TIMESTAMP', | ||||
|     'ELECTRICITY_IMPORTED_TOTAL': 'ELECTRICITY_IMPORTED_TOTAL', | ||||
|     'ELECTRICITY_REACTIVE_IMPORTED_TOTAL': 'ELECTRICITY_REACTIVE_IMPORTED_TOTAL', | ||||
|     'ELECTRICITY_USED_TARIFF_1': 'ELECTRICITY_USED_TARIFF_1', | ||||
|     'ELECTRICITY_USED_TARIFF_2': 'ELECTRICITY_USED_TARIFF_2', | ||||
|     'ELECTRICITY_EXPORTED_TOTAL': 'ELECTRICITY_EXPORTED_TOTAL', | ||||
|     'ELECTRICITY_REACTIVE_EXPORTED_TOTAL': 'ELECTRICITY_REACTIVE_EXPORTED_TOTAL', | ||||
|     'ELECTRICITY_DELIVERED_TARIFF_1': 'ELECTRICITY_DELIVERED_TARIFF_1', | ||||
|     'ELECTRICITY_DELIVERED_TARIFF_2': 'ELECTRICITY_DELIVERED_TARIFF_2', | ||||
|     'ELECTRICITY_ACTIVE_TARIFF': 'ELECTRICITY_ACTIVE_TARIFF', | ||||
|     'CURRENT_REACTIVE_EXPORTED': 'CURRENT_REACTIVE_EXPORTED', | ||||
|     'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1': 'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1', | ||||
|     'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2': 'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2', | ||||
|     'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1': 'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1', | ||||
|     'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2': 'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2', | ||||
|     'CURRENT_REACTIVE_IMPORTED': 'CURRENT_REACTIVE_IMPORTED', | ||||
|     'EQUIPMENT_IDENTIFIER': 'EQUIPMENT_IDENTIFIER', | ||||
|     'CURRENT_ELECTRICITY_USAGE': 'CURRENT_ELECTRICITY_USAGE', | ||||
|     'CURRENT_ELECTRICITY_DELIVERY': 'CURRENT_ELECTRICITY_DELIVERY', | ||||
|     'LONG_POWER_FAILURE_COUNT': 'LONG_POWER_FAILURE_COUNT', | ||||
|     'SHORT_POWER_FAILURE_COUNT': 'SHORT_POWER_FAILURE_COUNT', | ||||
|     'POWER_EVENT_FAILURE_LOG': 'POWER_EVENT_FAILURE_LOG', | ||||
|     'VOLTAGE_SAG_L1_COUNT': 'VOLTAGE_SAG_L1_COUNT', | ||||
|     'VOLTAGE_SAG_L2_COUNT': 'VOLTAGE_SAG_L2_COUNT', | ||||
|     'VOLTAGE_SAG_L3_COUNT': 'VOLTAGE_SAG_L3_COUNT', | ||||
|     'VOLTAGE_SWELL_L1_COUNT': 'VOLTAGE_SWELL_L1_COUNT', | ||||
|     'VOLTAGE_SWELL_L2_COUNT': 'VOLTAGE_SWELL_L2_COUNT', | ||||
|     'VOLTAGE_SWELL_L3_COUNT': 'VOLTAGE_SWELL_L3_COUNT', | ||||
|     'INSTANTANEOUS_VOLTAGE_L1': 'INSTANTANEOUS_VOLTAGE_L1', | ||||
|     'INSTANTANEOUS_VOLTAGE_L2': 'INSTANTANEOUS_VOLTAGE_L2', | ||||
|     'INSTANTANEOUS_VOLTAGE_L3': 'INSTANTANEOUS_VOLTAGE_L3', | ||||
|     'INSTANTANEOUS_CURRENT_L1': 'INSTANTANEOUS_CURRENT_L1', | ||||
|     'INSTANTANEOUS_CURRENT_L2': 'INSTANTANEOUS_CURRENT_L2', | ||||
|     'INSTANTANEOUS_CURRENT_L3': 'INSTANTANEOUS_CURRENT_L3', | ||||
|     'TEXT_MESSAGE_CODE': 'TEXT_MESSAGE_CODE', | ||||
|     'TEXT_MESSAGE': 'TEXT_MESSAGE', | ||||
|     'DEVICE_TYPE': 'DEVICE_TYPE', | ||||
|     'INSTANTANEOUS_ACTIVE_POWER_L1_POSITIVE': 'INSTANTANEOUS_ACTIVE_POWER_L1_POSITIVE', | ||||
|     'INSTANTANEOUS_ACTIVE_POWER_L2_POSITIVE': 'INSTANTANEOUS_ACTIVE_POWER_L2_POSITIVE', | ||||
|     'INSTANTANEOUS_ACTIVE_POWER_L3_POSITIVE': 'INSTANTANEOUS_ACTIVE_POWER_L3_POSITIVE', | ||||
|     'INSTANTANEOUS_ACTIVE_POWER_L1_NEGATIVE': 'INSTANTANEOUS_ACTIVE_POWER_L1_NEGATIVE', | ||||
|     'INSTANTANEOUS_ACTIVE_POWER_L2_NEGATIVE': 'INSTANTANEOUS_ACTIVE_POWER_L2_NEGATIVE', | ||||
|     'INSTANTANEOUS_ACTIVE_POWER_L3_NEGATIVE': 'INSTANTANEOUS_ACTIVE_POWER_L3_NEGATIVE', | ||||
|     'INSTANTANEOUS_REACTIVE_POWER_L1_POSITIVE': 'INSTANTANEOUS_REACTIVE_POWER_L1_POSITIVE', | ||||
|     'INSTANTANEOUS_REACTIVE_POWER_L1_NEGATIVE': 'INSTANTANEOUS_REACTIVE_POWER_L1_NEGATIVE', | ||||
|     'INSTANTANEOUS_REACTIVE_POWER_L2_POSITIVE': 'INSTANTANEOUS_REACTIVE_POWER_L2_POSITIVE', | ||||
|     'INSTANTANEOUS_REACTIVE_POWER_L2_NEGATIVE': 'INSTANTANEOUS_REACTIVE_POWER_L2_NEGATIVE', | ||||
|     'INSTANTANEOUS_REACTIVE_POWER_L3_POSITIVE': 'INSTANTANEOUS_REACTIVE_POWER_L3_POSITIVE', | ||||
|     'INSTANTANEOUS_REACTIVE_POWER_L3_NEGATIVE': 'INSTANTANEOUS_REACTIVE_POWER_L3_NEGATIVE', | ||||
|     'EQUIPMENT_IDENTIFIER_GAS': 'EQUIPMENT_IDENTIFIER_GAS', | ||||
|     'HOURLY_GAS_METER_READING': 'HOURLY_GAS_METER_READING', | ||||
|     'GAS_METER_READING': 'GAS_METER_READING', | ||||
|     'ACTUAL_TRESHOLD_ELECTRICITY': 'ACTUAL_TRESHOLD_ELECTRICITY', | ||||
|     'ACTUAL_SWITCH_POSITION': 'ACTUAL_SWITCH_POSITION', | ||||
|     'VALVE_POSITION_GAS': 'VALVE_POSITION_GAS', | ||||
|     'BELGIUM_VERSION_INFORMATION': 'BELGIUM_VERSION_INFORMATION', | ||||
|     'BELGIUM_EQUIPMENT_IDENTIFIER': 'BELGIUM_EQUIPMENT_IDENTIFIER', | ||||
|     'BELGIUM_CURRENT_AVERAGE_DEMAND': 'BELGIUM_CURRENT_AVERAGE_DEMAND', | ||||
|     'BELGIUM_MAXIMUM_DEMAND_MONTH': 'BELGIUM_MAXIMUM_DEMAND_MONTH', | ||||
|     'BELGIUM_MAXIMUM_DEMAND_13_MONTHS': 'BELGIUM_MAXIMUM_DEMAND_13_MONTHS', | ||||
|     'BELGIUM_MAX_POWER_PER_PHASE': 'BELGIUM_MAX_POWER_PER_PHASE', | ||||
|     'BELGIUM_MAX_CURRENT_PER_PHASE': 'BELGIUM_MAX_CURRENT_PER_PHASE', | ||||
|     'BELGIUM_MBUS1_DEVICE_TYPE': 'BELGIUM_MBUS1_DEVICE_TYPE', | ||||
|     'BELGIUM_MBUS1_EQUIPMENT_IDENTIFIER': 'BELGIUM_MBUS1_EQUIPMENT_IDENTIFIER', | ||||
|     'BELGIUM_MBUS1_VALVE_POSITION': 'BELGIUM_MBUS1_VALVE_POSITION', | ||||
|     'BELGIUM_MBUS1_METER_READING1': 'BELGIUM_MBUS1_METER_READING1', | ||||
|     'BELGIUM_MBUS1_METER_READING2': 'BELGIUM_MBUS1_METER_READING2', | ||||
|     'BELGIUM_MBUS2_EQUIPMENT_IDENTIFIER': 'BELGIUM_MBUS2_EQUIPMENT_IDENTIFIER', | ||||
|     'BELGIUM_MBUS2_VALVE_POSITION': 'BELGIUM_MBUS2_VALVE_POSITION', | ||||
|     'BELGIUM_MBUS2_METER_READING1': 'BELGIUM_MBUS2_METER_READING1', | ||||
|     'BELGIUM_MBUS2_METER_READING2': 'BELGIUM_MBUS2_METER_READING2', | ||||
|     'BELGIUM_MBUS3_EQUIPMENT_IDENTIFIER': 'BELGIUM_MBUS3_EQUIPMENT_IDENTIFIER', | ||||
|     'BELGIUM_MBUS3_VALVE_POSITION': 'BELGIUM_MBUS3_VALVE_POSITION', | ||||
|     'BELGIUM_MBUS3_METER_READING1': 'BELGIUM_MBUS3_METER_READING1', | ||||
|     'BELGIUM_MBUS3_METER_READING2': 'BELGIUM_MBUS3_METER_READING2', | ||||
|     'BELGIUM_MBUS4_EQUIPMENT_IDENTIFIER': 'BELGIUM_MBUS4_EQUIPMENT_IDENTIFIER', | ||||
|     'BELGIUM_MBUS4_VALVE_POSITION': 'BELGIUM_MBUS4_VALVE_POSITION', | ||||
|     'BELGIUM_MBUS4_METER_READING1': 'BELGIUM_MBUS4_METER_READING1', | ||||
|     'BELGIUM_MBUS4_METER_READING2': 'BELGIUM_MBUS4_METER_READING2', | ||||
|     'LUXEMBOURG_EQUIPMENT_IDENTIFIER': 'LUXEMBOURG_EQUIPMENT_IDENTIFIER', | ||||
|     'Q3D_EQUIPMENT_IDENTIFIER': 'Q3D_EQUIPMENT_IDENTIFIER', | ||||
|     'Q3D_EQUIPMENT_STATE': 'Q3D_EQUIPMENT_STATE', | ||||
|     'Q3D_EQUIPMENT_SERIALNUMBER': 'Q3D_EQUIPMENT_SERIALNUMBER', | ||||
|     'BELGIUM_MBUS2_DEVICE_TYPE': 'BELGIUM_MBUS2_DEVICE_TYPE', | ||||
| 	'EON_HU_COSEM_LOGICAL_DEVICE_NAME': 'COSEM_LOGICAL_DEVICE_NAME', | ||||
| 	'EON_HU_EQUIPMENT_SERIAL_NUMBER': 'EQUIPMENT_SERIAL_NUMBER', | ||||
|     'EON_HU_ELECTRICITY_DELIVERED_TARIFF_3': 'ELECTRICITY_DELIVERED_TARIFF_3', | ||||
|     'EON_HU_ELECTRICITY_DELIVERED_TARIFF_4': 'ELECTRICITY_DELIVERED_TARIFF_4', | ||||
|     'EON_HU_ELECTRICITY_USED_TARIFF_3': 'ELECTRICITY_USED_TARIFF_3', | ||||
|     'EON_HU_ELECTRICITY_USED_TARIFF_4': 'ELECTRICITY_USED_TARIFF_4', | ||||
|     'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q1': 'ELECTRICITY_REACTIVE_TOTAL_Q1', | ||||
|     'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q2': 'ELECTRICITY_REACTIVE_TOTAL_Q2', | ||||
|     'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q3': 'ELECTRICITY_REACTIVE_TOTAL_Q3', | ||||
|     'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q4': 'ELECTRICITY_REACTIVE_TOTAL_Q4', | ||||
|     'EON_HU_ELECTRICITY_COMBINED': 'ELECTRICITY_COMBINED', | ||||
|     'EON_HU_INSTANTANEOUS_POWER_FACTOR_TOTAL': 'INSTANTANEOUS_POWER_FACTOR_TOTAL', | ||||
|     'EON_HU_INSTANTANEOUS_POWER_FACTOR_L1': 'INSTANTANEOUS_POWER_FACTOR_L1', | ||||
|     'EON_HU_INSTANTANEOUS_POWER_FACTOR_L2': 'INSTANTANEOUS_POWER_FACTOR_L2', | ||||
|     'EON_HU_INSTANTANEOUS_POWER_FACTOR_L3': 'INSTANTANEOUS_POWER_FACTOR_L3', | ||||
|     'EON_HU_FREQUENCY': 'FREQUENCY', | ||||
|     'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q1': 'INSTANTANEOUS_REACTIVE_POWER_Q1', | ||||
|     'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q2': 'INSTANTANEOUS_REACTIVE_POWER_Q2', | ||||
|     'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q3': 'INSTANTANEOUS_REACTIVE_POWER_Q3', | ||||
|     'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q4': 'INSTANTANEOUS_REACTIVE_POWER_Q4', | ||||
|     'EON_HU_MAX_POWER_ON_L1': 'MAX_POWER_ON_L1', | ||||
|     'EON_HU_MAX_POWER_ON_L2': 'MAX_POWER_ON_L2', | ||||
|     'EON_HU_MAX_POWER_ON_L3': 'MAX_POWER_ON_L3', | ||||
|     'EON_HU_LAST_MONTH_DATA': 'LAST_MONTH_DATA' | ||||
| } | ||||
| 
 | ||||
| REVERSE_EN = dict([(v, k) for k, v in EN.items()]) | ||||
|  | ||||
| @ -29,8 +29,8 @@ class TelegramParser(object): | ||||
|         self.telegram_specification = telegram_specification | ||||
|         # Regexes are compiled once to improve performance | ||||
|         self.telegram_specification_regexes = { | ||||
|             signature: re.compile(signature, re.DOTALL | re.MULTILINE) | ||||
|             for signature in self.telegram_specification['objects'].keys() | ||||
|             object["obis_reference"]: re.compile(object["obis_reference"], re.DOTALL | re.MULTILINE) | ||||
|             for object in self.telegram_specification['objects'] | ||||
|         } | ||||
| 
 | ||||
|     def parse(self, telegram_data, encryption_key="", authentication_key="", throw_ex=False):  # noqa: C901 | ||||
| @ -84,17 +84,17 @@ class TelegramParser(object): | ||||
| 
 | ||||
|         telegram = Telegram() | ||||
| 
 | ||||
|         for signature, parser in self.telegram_specification['objects'].items(): | ||||
|             pattern = self.telegram_specification_regexes[signature] | ||||
|         for object in self.telegram_specification['objects']: | ||||
|             pattern = self.telegram_specification_regexes[object["obis_reference"]] | ||||
|             matches = pattern.findall(telegram_data) | ||||
| 
 | ||||
|             # Some signatures are optional and may not be present, | ||||
|             # so only parse lines that match | ||||
|             for match in matches: | ||||
|                 try: | ||||
|                     dsmr_object = parser.parse(match) | ||||
|                     dsmr_object = object["value_parser"].parse(match) | ||||
|                 except ParseError: | ||||
|                     logger.error("ignore line with signature {}, because parsing failed.".format(signature), | ||||
|                     logger.error("ignore line with signature {}, because parsing failed.".format(object["obis_reference"]), | ||||
|                                  exc_info=True) | ||||
|                     if throw_ex: | ||||
|                         raise | ||||
| @ -102,7 +102,7 @@ class TelegramParser(object): | ||||
|                     logger.error("Unexpected {}: {}".format(type(err), err)) | ||||
|                     raise | ||||
|                 else: | ||||
|                     telegram.add(obis_reference=signature, dsmr_object=dsmr_object) | ||||
|                     telegram.add(obis_reference=object["value_name"], dsmr_object=dsmr_object) | ||||
| 
 | ||||
|         return telegram | ||||
| 
 | ||||
|  | ||||
| @ -284,29 +284,98 @@ Q3D = { | ||||
| SAGEMCOM_T210_D_R = { | ||||
|     "general_global_cipher": True, | ||||
|     "checksum_support": True, | ||||
|     'objects': { | ||||
|         obis.P1_MESSAGE_HEADER: CosemParser(ValueParser(str)), | ||||
|         obis.P1_MESSAGE_TIMESTAMP: CosemParser(ValueParser(timestamp)), | ||||
|         obis.ELECTRICITY_IMPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_USED_TARIFF_1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_USED_TARIFF_2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_ELECTRICITY_USAGE: CosemParser(ValueParser(Decimal)), | ||||
| 
 | ||||
|         obis.ELECTRICITY_REACTIVE_EXPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_REACTIVE_IMPORTED: CosemParser(ValueParser(Decimal)), | ||||
| 
 | ||||
|         obis.ELECTRICITY_EXPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_DELIVERED_TARIFF_1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_DELIVERED_TARIFF_2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_ELECTRICITY_DELIVERY: CosemParser(ValueParser(Decimal)), | ||||
| 
 | ||||
|         obis.ELECTRICITY_REACTIVE_IMPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_REACTIVE_EXPORTED: CosemParser(ValueParser(Decimal)), | ||||
|     } | ||||
|     'objects': [ | ||||
| 		{ | ||||
| 			'obis_reference': obis.P1_MESSAGE_HEADER, | ||||
| 			'value_parser': CosemParser(ValueParser(str)), | ||||
| 			'value_name': 'P1_MESSAGE_HEADER' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.P1_MESSAGE_TIMESTAMP, | ||||
| 			'value_parser': CosemParser(ValueParser(timestamp)), | ||||
| 			'value_name': 'P1_MESSAGE_TIMESTAMP' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_IMPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_IMPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_USED_TARIFF_1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_USED_TARIFF_1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_USED_TARIFF_2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_USED_TARIFF_2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.CURRENT_ELECTRICITY_USAGE, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'CURRENT_ELECTRICITY_USAGE' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_EXPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_EXPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_EXPORTED_TARIFF_2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.CURRENT_REACTIVE_IMPORTED, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'CURRENT_REACTIVE_IMPORTED' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_EXPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_EXPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_DELIVERED_TARIFF_1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_DELIVERED_TARIFF_1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_DELIVERED_TARIFF_2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_DELIVERED_TARIFF_2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.CURRENT_ELECTRICITY_DELIVERY, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'CURRENT_ELECTRICITY_DELIVERY' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_IMPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_IMPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_IMPORTED_TARIFF_2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.CURRENT_REACTIVE_EXPORTED, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'CURRENT_REACTIVE_EXPORTED' | ||||
| 		} | ||||
|     ] | ||||
| } | ||||
| AUSTRIA_ENERGIENETZE_STEIERMARK = SAGEMCOM_T210_D_R | ||||
| 
 | ||||
| @ -345,54 +414,262 @@ EON_HUNGARY = { | ||||
| 	# Based on V5 | ||||
| 	# Reference: https://www.eon.hu/content/dam/eon/eon-hungary/documents/Lakossagi/aram/muszaki-ugyek/p1_port%20felhaszn_interfesz_taj_%2020230210.pdf | ||||
|     'checksum_support': True, | ||||
|     'objects': { | ||||
|         obis.P1_MESSAGE_TIMESTAMP: CosemParser(ValueParser(timestamp)), | ||||
|         obis.LUXEMBOURG_EQUIPMENT_IDENTIFIER: CosemParser(ValueParser(str)), # "COSEM logical equipment name" | ||||
|         obis.EQUIPMENT_IDENTIFIER_GAS: CosemParser(ValueParser(str)), # This obis is already defined, so it is not possible to "rename" it to "EQUIPMENT_SERIAL_NUMBER" | ||||
|         obis.ELECTRICITY_ACTIVE_TARIFF: CosemParser(ValueParser(str)), | ||||
|         obis.ACTUAL_SWITCH_POSITION: CosemParser(ValueParser(str)), # This seems to be wrong in documentation, it's not 0-0:96.50.68, but 0-0:96.3.10 | ||||
|         obis.ACTUAL_TRESHOLD_ELECTRICITY: CosemParser(ValueParser(Decimal)), # This obis is already duplicated, so it will show up as "BELGIUM_MAX_POWER_PER_PHASE" | ||||
|         obis.ELECTRICITY_IMPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_USED_TARIFF_1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_USED_TARIFF_2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_USED_TARIFF_3: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_USED_TARIFF_4: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_EXPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_DELIVERED_TARIFF_1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_DELIVERED_TARIFF_2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_DELIVERED_TARIFF_3: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_DELIVERED_TARIFF_4: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_REACTIVE_IMPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.ELECTRICITY_REACTIVE_EXPORTED_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q3: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q4: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_ELECTRICITY_COMBINED: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_VOLTAGE_L1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_VOLTAGE_L2: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.INSTANTANEOUS_VOLTAGE_L3: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.INSTANTANEOUS_CURRENT_L1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.INSTANTANEOUS_CURRENT_L2: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.INSTANTANEOUS_CURRENT_L3: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_TOTAL: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L2: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L3: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.EON_HU_FREQUENCY: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_ELECTRICITY_USAGE: CosemParser(ValueParser(Decimal)), | ||||
|         obis.CURRENT_ELECTRICITY_DELIVERY: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q2: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q3: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q4: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_MAX_POWER_ON_L1: CosemParser(ValueParser(Decimal)), | ||||
|         obis.EON_HU_MAX_POWER_ON_L2: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         obis.EON_HU_MAX_POWER_ON_L3: CosemParser(ValueParser(Decimal)), # Only with 3 phase meters | ||||
|         # This is a list of last month data (on last day of last month @ 23:59:59), | ||||
|         # But it is not clear that what are the elements of the list. | ||||
|         # This is not well documented enough, so it is ignored for now. | ||||
|         # obis.EON_HU_LAST_MONTH_DATA:  | ||||
|         obis.TEXT_MESSAGE: CosemParser(ValueParser(str)) | ||||
|     } | ||||
|     'objects': [ | ||||
| 		{ | ||||
| 			'obis_reference': obis.P1_MESSAGE_TIMESTAMP, | ||||
| 			'value_parser': CosemParser(ValueParser(timestamp)), | ||||
| 			'value_name': 'P1_MESSAGE_TIMESTAMP' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.LUXEMBOURG_EQUIPMENT_IDENTIFIER, | ||||
| 			'value_parser': CosemParser(ValueParser(str)), | ||||
| 			'value_name': 'EON_HU_COSEM_LOGICAL_DEVICE_NAME' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EQUIPMENT_IDENTIFIER_GAS, | ||||
| 			'value_parser': CosemParser(ValueParser(str)), | ||||
| 			'value_name': 'EON_HU_EQUIPMENT_SERIAL_NUMBER' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_ACTIVE_TARIFF, | ||||
| 			'value_parser': CosemParser(ValueParser(str)), | ||||
| 			'value_name': 'ELECTRICITY_ACTIVE_TARIFF' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ACTUAL_SWITCH_POSITION, | ||||
| 			'value_parser': CosemParser(ValueParser(str)), | ||||
| 			'value_name': 'ACTUAL_SWITCH_POSITION' | ||||
| 			# This seems to be wrong in documentation, it's not 0-0:96.50.68, but 0-0:96.3.10 | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.BELGIUM_MAX_POWER_PER_PHASE, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ACTUAL_TRESHOLD_ELECTRICITY' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_IMPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_IMPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_USED_TARIFF_1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_USED_TARIFF_1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_USED_TARIFF_2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_USED_TARIFF_2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_USED_TARIFF_3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_USED_TARIFF_3' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_USED_TARIFF_4, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_USED_TARIFF_4' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_EXPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_EXPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_DELIVERED_TARIFF_1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_DELIVERED_TARIFF_1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_DELIVERED_TARIFF_2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_DELIVERED_TARIFF_2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_DELIVERED_TARIFF_3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_DELIVERED_TARIFF_3' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_DELIVERED_TARIFF_4, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_DELIVERED_TARIFF_4' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_IMPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_IMPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.ELECTRICITY_REACTIVE_EXPORTED_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'ELECTRICITY_REACTIVE_EXPORTED_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q3' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q4, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_REACTIVE_TOTAL_Q4' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_ELECTRICITY_COMBINED, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_ELECTRICITY_COMBINED' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.INSTANTANEOUS_VOLTAGE_L1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'INSTANTANEOUS_VOLTAGE_L1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.INSTANTANEOUS_VOLTAGE_L2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'INSTANTANEOUS_VOLTAGE_L2' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.INSTANTANEOUS_VOLTAGE_L3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'INSTANTANEOUS_VOLTAGE_L3' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.INSTANTANEOUS_CURRENT_L1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'INSTANTANEOUS_CURRENT_L1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.INSTANTANEOUS_CURRENT_L2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'INSTANTANEOUS_CURRENT_L2' | ||||
| 			# Only with 3 phase meters | ||||
| 		},  | ||||
| 		{ | ||||
| 			'obis_reference': obis.INSTANTANEOUS_CURRENT_L3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'INSTANTANEOUS_CURRENT_L3' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_TOTAL, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_POWER_FACTOR_TOTAL' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_POWER_FACTOR_L1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_POWER_FACTOR_L2' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_POWER_FACTOR_L3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_POWER_FACTOR_L3' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_FREQUENCY, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_FREQUENCY' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.CURRENT_ELECTRICITY_USAGE, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'CURRENT_ELECTRICITY_USAGE' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.CURRENT_ELECTRICITY_DELIVERY, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'CURRENT_ELECTRICITY_DELIVERY' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q2' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q3' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q4, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_INSTANTANEOUS_REACTIVE_POWER_Q4' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_MAX_POWER_ON_L1, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_MAX_POWER_ON_L1' | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_MAX_POWER_ON_L2, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_MAX_POWER_ON_L2' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		{ | ||||
| 			'obis_reference': obis.EON_HU_MAX_POWER_ON_L3, | ||||
| 			'value_parser': CosemParser(ValueParser(Decimal)), | ||||
| 			'value_name': 'EON_HU_MAX_POWER_ON_L3' | ||||
| 			# Only with 3 phase meters | ||||
| 		}, | ||||
| 		# I'm not sure which datas does this line containes. It should be the data of last minute of last month. | ||||
|         # { | ||||
| 			# 'obis_reference': obis.BELGIUM_MAXIMUM_DEMAND_13_MONTHS, | ||||
| 			# 'value_parser': NonExistingParser( | ||||
| 				# ValueParser(timestamp), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal), | ||||
| 				# ValueParser(Decimal) | ||||
| 			# ), | ||||
| 			# 'value_name': 'EON_HU_LAST_MONTH_DATA' | ||||
| 		# }, | ||||
| 		{ | ||||
| 			'obis_reference': obis.TEXT_MESSAGE, | ||||
| 			'value_parser': CosemParser(ValueParser(str)), | ||||
| 			'value_name': 'TEXT_MESSAGE' | ||||
| 		} | ||||
|     ] | ||||
| } | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user