kopia lustrzana https://github.com/weetmuts/wmbusmeters
Porównaj commity
4 Commity
ff72e1debc
...
efcc41d107
Autor | SHA1 | Data |
---|---|---|
Fredrik Öhrström | efcc41d107 | |
Fredrik Öhrström | a69e547a17 | |
Fredrik Öhrström | 23f2279a64 | |
Fredrik Öhrström | 05edab0882 |
7
CHANGES
7
CHANGES
|
@ -1,4 +1,11 @@
|
|||
|
||||
Fixed long standing confusion wether the DIF binary values are by
|
||||
default signed or unsigned. It turns out that they are signed!
|
||||
Thank you Mathias (Zeppelin500) and KaVauA for sorting this out!
|
||||
|
||||
For unknown VIFS and non-compliant meters the signedness
|
||||
can be overriden to unsigned.
|
||||
|
||||
New improved address specification. E.g. use 12345678.M=KAM.V=1b.T=16
|
||||
to listen to exactly the telegrams with id 12345678 manufacturer KAM,
|
||||
version 0x1b and type 0x16. You if you do not specify any M,V or T, they
|
||||
|
|
2
Makefile
2
Makefile
|
@ -1,4 +1,4 @@
|
|||
# Copyright (C) 2017-2023 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
# Copyright (C) 2017-2024 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
|
|
|
@ -46,7 +46,7 @@ namespace
|
|||
"Total cumulative active imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -58,7 +58,7 @@ namespace
|
|||
"Total cumulative active imported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -71,7 +71,7 @@ namespace
|
|||
"Total cumulative active exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -85,7 +85,7 @@ namespace
|
|||
"Total cumulative active exported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -99,7 +99,7 @@ namespace
|
|||
"Active tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF9300")),
|
||||
Unit::NUMBER
|
||||
|
@ -110,7 +110,7 @@ namespace
|
|||
"Current transformer ratio (numerator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA015")),
|
||||
Unit::FACTOR
|
||||
|
@ -121,7 +121,7 @@ namespace
|
|||
"Voltage transformer ratio (numerator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA115")),
|
||||
Unit::FACTOR
|
||||
|
@ -132,7 +132,7 @@ namespace
|
|||
"Current transformer ratio (denominator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA215")),
|
||||
Unit::FACTOR
|
||||
|
@ -143,7 +143,7 @@ namespace
|
|||
"Voltage transformer ratio (denominator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA315")),
|
||||
Unit::FACTOR
|
||||
|
@ -236,7 +236,7 @@ namespace
|
|||
"Power fail counter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FF9800"))
|
||||
);
|
||||
|
@ -246,7 +246,7 @@ namespace
|
|||
"Instantaneous total active imported power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -258,7 +258,7 @@ namespace
|
|||
"Instantaneous active imported power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -271,7 +271,7 @@ namespace
|
|||
"Instantaneous active imported power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -284,7 +284,7 @@ namespace
|
|||
"Instantaneous active imported power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -297,7 +297,7 @@ namespace
|
|||
"Instantaneous total reactive imported power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -310,7 +310,7 @@ namespace
|
|||
"Instantaneous reactive imported power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -324,7 +324,7 @@ namespace
|
|||
"Instantaneous reactive imported power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -338,7 +338,7 @@ namespace
|
|||
"Instantaneous reactive imported power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -352,7 +352,7 @@ namespace
|
|||
"Instantaneous total apparent imported power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -365,7 +365,7 @@ namespace
|
|||
"Instantaneous apparent imported power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -379,7 +379,7 @@ namespace
|
|||
"Instantaneous apparent imported power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -393,7 +393,7 @@ namespace
|
|||
"Instantaneous apparent imported power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -407,7 +407,7 @@ namespace
|
|||
"Instantaneous voltage between L1 and neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -420,7 +420,7 @@ namespace
|
|||
"Instantaneous voltage between L2 and neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -433,7 +433,7 @@ namespace
|
|||
"Instantaneous voltage between L3 and neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -446,7 +446,7 @@ namespace
|
|||
"Instantaneous voltage between L1 and L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -459,7 +459,7 @@ namespace
|
|||
"Instantaneous voltage between L2 and L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -472,7 +472,7 @@ namespace
|
|||
"Instantaneous voltage between L3 and L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -485,7 +485,7 @@ namespace
|
|||
"Instantaneous current in the L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -498,7 +498,7 @@ namespace
|
|||
"Instantaneous current in the L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -511,7 +511,7 @@ namespace
|
|||
"Instantaneous current in the L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -524,7 +524,7 @@ namespace
|
|||
"Frequency of AC",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Frequency,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0AFFD900")),
|
||||
Unit::HZ,
|
||||
|
@ -536,7 +536,7 @@ namespace
|
|||
"Power factor.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE000")),
|
||||
Unit::FACTOR,
|
||||
|
@ -548,7 +548,7 @@ namespace
|
|||
"Power factor for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE0FF8100")),
|
||||
Unit::FACTOR,
|
||||
|
@ -560,7 +560,7 @@ namespace
|
|||
"Power factor for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE0FF8200")),
|
||||
Unit::FACTOR,
|
||||
|
@ -572,7 +572,7 @@ namespace
|
|||
"Power factor.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE0FF8300")),
|
||||
Unit::FACTOR,
|
||||
|
@ -584,7 +584,7 @@ namespace
|
|||
"Total power phase angle.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD200")),
|
||||
Unit::DEGREE,
|
||||
|
@ -596,7 +596,7 @@ namespace
|
|||
"Power phase angle for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD2FF8100")),
|
||||
Unit::DEGREE,
|
||||
|
@ -608,7 +608,7 @@ namespace
|
|||
"Power phase angle for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD2FF8200")),
|
||||
Unit::DEGREE,
|
||||
|
@ -620,7 +620,7 @@ namespace
|
|||
"Power phase angle for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD2FF8300")),
|
||||
Unit::DEGREE,
|
||||
|
@ -632,7 +632,7 @@ namespace
|
|||
"Total cumulative reactive kvarh imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Reactive_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -646,7 +646,7 @@ namespace
|
|||
"Total cumulative reactive kvarh imported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -660,7 +660,7 @@ namespace
|
|||
"Total cumulative reactive kvarh exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Reactive_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -674,7 +674,7 @@ namespace
|
|||
"Total cumulative reactive kvarh exported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -688,7 +688,7 @@ namespace
|
|||
"The quadrant in which the current is measured.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF9700")),
|
||||
Unit::NUMBER
|
||||
|
@ -699,7 +699,7 @@ namespace
|
|||
"The quadrant in which the current is measured for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF97FF8100")),
|
||||
Unit::NUMBER
|
||||
|
@ -710,7 +710,7 @@ namespace
|
|||
"The quadrant in which the current is measured for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF97FF8200")),
|
||||
Unit::NUMBER
|
||||
|
@ -721,7 +721,7 @@ namespace
|
|||
"The quadrant in which the current is measured for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF97FF8300")),
|
||||
Unit::NUMBER
|
||||
|
@ -777,7 +777,7 @@ namespace
|
|||
"Number of times input 1-2 counted a 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(SubUnitNr(3),SubUnitNr(4))
|
||||
|
@ -790,7 +790,7 @@ namespace
|
|||
"Resettable cumulative active imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -803,7 +803,7 @@ namespace
|
|||
"Resettable cumulative active exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -817,7 +817,7 @@ namespace
|
|||
"Resettable cumulative reactive imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -831,7 +831,7 @@ namespace
|
|||
"Resettable cumulative reactive exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -845,7 +845,7 @@ namespace
|
|||
"Number of times the resettable energy imported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -857,7 +857,7 @@ namespace
|
|||
"Number of times the resettable active energy exported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -870,7 +870,7 @@ namespace
|
|||
"Number of times the resettable reactive energy imported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -883,7 +883,7 @@ namespace
|
|||
"Number of times the resettable reactive energy exported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -896,7 +896,7 @@ namespace
|
|||
"Energy in co2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Mass,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0EFFF9C400")),
|
||||
Unit::KG,
|
||||
|
@ -908,7 +908,7 @@ namespace
|
|||
"CO2 conversion factor (kg * 10-3 /kWh).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA400")),
|
||||
Unit::FACTOR
|
||||
|
@ -919,7 +919,7 @@ namespace
|
|||
"Energy in currency.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0EFFF9C900"))
|
||||
);
|
||||
|
@ -929,7 +929,7 @@ namespace
|
|||
"Currency conversion factor (curr * 10-3 /kWh).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA500")),
|
||||
Unit::FACTOR
|
||||
|
@ -940,7 +940,7 @@ namespace
|
|||
"Total cumulative apparent kvah imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Apparent_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -954,7 +954,7 @@ namespace
|
|||
"Total cumulative apparent kvah exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Apparent_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -968,7 +968,7 @@ namespace
|
|||
"Total imported active energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -981,7 +981,7 @@ namespace
|
|||
"Total imported active energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -994,7 +994,7 @@ namespace
|
|||
"Total imported active energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1007,7 +1007,7 @@ namespace
|
|||
"Total imported reactive energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1021,7 +1021,7 @@ namespace
|
|||
"Total imported reactive energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1035,7 +1035,7 @@ namespace
|
|||
"Total imported reactive energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1049,7 +1049,7 @@ namespace
|
|||
"Total imported apparent energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1063,7 +1063,7 @@ namespace
|
|||
"Total imported apparent energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1077,7 +1077,7 @@ namespace
|
|||
"Total imported apparent energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1091,7 +1091,7 @@ namespace
|
|||
"Total exported active energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1105,7 +1105,7 @@ namespace
|
|||
"Total exported active energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1119,7 +1119,7 @@ namespace
|
|||
"Total exported active energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1133,7 +1133,7 @@ namespace
|
|||
"Total exported reactive energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1147,7 +1147,7 @@ namespace
|
|||
"Total exported reactive energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1161,7 +1161,7 @@ namespace
|
|||
"Total exported reactive energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1175,7 +1175,7 @@ namespace
|
|||
"Total exported apparent energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1189,7 +1189,7 @@ namespace
|
|||
"Total exported apparent energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1203,7 +1203,7 @@ namespace
|
|||
"Total exported apparent energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1217,7 +1217,7 @@ namespace
|
|||
"Active net energy total.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1230,7 +1230,7 @@ namespace
|
|||
"Active net energy total for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1244,7 +1244,7 @@ namespace
|
|||
"Active net energy total for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1258,7 +1258,7 @@ namespace
|
|||
"Active net energy total for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1272,7 +1272,7 @@ namespace
|
|||
"Active net energy total.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1286,7 +1286,7 @@ namespace
|
|||
"Active net reactive energy total for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1301,7 +1301,7 @@ namespace
|
|||
"Active net reactive energy total for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1316,7 +1316,7 @@ namespace
|
|||
"Active net reactive energy total for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1331,7 +1331,7 @@ namespace
|
|||
"Active net energy total.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1345,7 +1345,7 @@ namespace
|
|||
"Active net apparent energy total for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1360,7 +1360,7 @@ namespace
|
|||
"Active net apparent energy total for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1375,7 +1375,7 @@ namespace
|
|||
"Active net apparent energy total for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
|
|
@ -41,7 +41,7 @@ namespace
|
|||
"The total gas consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -53,7 +53,7 @@ namespace
|
|||
"The current gas flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -64,7 +64,7 @@ namespace
|
|||
"The current temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -75,7 +75,7 @@ namespace
|
|||
"Date time when previous billing period ended.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -87,7 +87,7 @@ namespace
|
|||
"The total gas consumption recorded when the previous billing period ended.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -43,7 +43,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -54,7 +54,7 @@ namespace
|
|||
"Current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::PowerW)
|
||||
|
@ -65,7 +65,7 @@ namespace
|
|||
"The total energy production recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0E833C"))
|
||||
);
|
||||
|
@ -75,7 +75,7 @@ namespace
|
|||
"Current power production.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0BAB3C"))
|
||||
);
|
||||
|
@ -85,7 +85,7 @@ namespace
|
|||
"Voltage at phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0AFDC9FC01"))
|
||||
);
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
"Voltage at phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0AFDC9FC02"))
|
||||
);
|
||||
|
@ -105,7 +105,7 @@ namespace
|
|||
"Voltage at phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0AFDC9FC03"))
|
||||
);
|
||||
|
@ -124,7 +124,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter on tariff 1.",
|
||||
DEFAULT_PRINT_PROPERTIES, // ,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -136,7 +136,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter on tariff 2.",
|
||||
DEFAULT_PRINT_PROPERTIES, // ,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -148,7 +148,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter on tariff 3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -160,7 +160,7 @@ namespace
|
|||
"The total energy production recorded by this meter on tariff 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("8E10833C"))
|
||||
);
|
||||
|
@ -170,7 +170,7 @@ namespace
|
|||
"The total energy production recorded by this meter on tariff 2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("8E20833C"))
|
||||
);
|
||||
|
@ -180,7 +180,7 @@ namespace
|
|||
"The total energy production recorded by this meter on tariff 3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("8E30833C"))
|
||||
);
|
||||
|
@ -190,7 +190,7 @@ namespace
|
|||
"The maximum demand indicator (maximum 15-min average power consumption recorded this month).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
|
|
@ -95,7 +95,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -106,7 +106,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -118,7 +118,7 @@ namespace
|
|||
"The heat cost allocation at set date #.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -80,7 +80,7 @@ namespace
|
|||
"Water consumption at the # billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -72,7 +72,7 @@ namespace
|
|||
"The total heat energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -83,7 +83,7 @@ namespace
|
|||
"The total heating media volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -152,7 +152,7 @@ namespace
|
|||
"The total heat energy consumption recorded at end of previous month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(32+i))
|
||||
|
@ -169,7 +169,7 @@ namespace
|
|||
tostrprintf("Previous month %d last date.", i+1),
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(32+i))
|
||||
|
@ -184,7 +184,7 @@ namespace
|
|||
"The total heat energy consumption at the due date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(8))
|
||||
|
@ -206,7 +206,7 @@ namespace
|
|||
"The current heat media volume flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -217,7 +217,7 @@ namespace
|
|||
"The current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::PowerW)
|
||||
|
@ -228,7 +228,7 @@ namespace
|
|||
"The total heat energy consumption recorded at end of last month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(32))
|
||||
|
@ -249,7 +249,7 @@ namespace
|
|||
"Maximum power consumption last month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(StorageNr(32))
|
||||
|
@ -262,7 +262,7 @@ namespace
|
|||
"The current forward heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -273,7 +273,7 @@ namespace
|
|||
"The current return heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -284,17 +284,17 @@ namespace
|
|||
// Test: Heat c5isf 55445555 NOKEY
|
||||
|
||||
// telegram=|E544496A55554455880D7A320200002F2F_04060000000004130000000002FD17240084800106000000008280016C2124C480010600000080C280016CFFFF84810106000000808281016CFFFFC481010600000080C281016CFFFF84820106000000808282016CFFFFC482010600000080C282016CFFFF84830106000000808283016CFFFFC483010600000080C283016CFFFF84840106000000808284016CFFFFC484010600000080C284016CFFFF84850106000000808285016CFFFFC485010600000080C285016CFFFF84860106000000808286016CFFFFC486010600000080C286016CFFFF|
|
||||
// {"media":"heat/cooling load","meter":"c5isf","name":"Heat","id":"55445555","total_energy_consumption_kwh":0,"total_volume_m3":0,"status":"ERROR REVERSE_FLOW SUPPLY_SENSOR_INTERRUPTED","prev_1_month":"2017-04-01","prev_2_month":"2127-15-31","prev_3_month":"2127-15-31","prev_4_month":"2127-15-31","prev_5_month":"2127-15-31","prev_6_month":"2127-15-31","prev_7_month":"2127-15-31","prev_8_month":"2127-15-31","prev_9_month":"2127-15-31","prev_10_month":"2127-15-31","prev_11_month":"2127-15-31","prev_12_month":"2127-15-31","prev_13_month":"2127-15-31","prev_14_month":"2127-15-31","prev_1_month_kwh":0,"prev_2_month_kwh":2147483648,"prev_3_month_kwh":2147483648,"prev_4_month_kwh":2147483648,"prev_5_month_kwh":2147483648,"prev_6_month_kwh":2147483648,"prev_7_month_kwh":2147483648,"prev_8_month_kwh":2147483648,"prev_9_month_kwh":2147483648,"prev_10_month_kwh":2147483648,"prev_11_month_kwh":2147483648,"prev_12_month_kwh":2147483648,"prev_13_month_kwh":2147483648,"prev_14_month_kwh":2147483648,"total_energy_consumption_last_month_kwh":0,"timestamp":"1111-11-11T11:11:11Z"}
|
||||
// {"media":"heat/cooling load","meter":"c5isf","name":"Heat","id":"55445555","total_energy_consumption_kwh":0,"total_volume_m3":0,"status":"ERROR REVERSE_FLOW SUPPLY_SENSOR_INTERRUPTED","prev_1_month":"2017-04-01","prev_2_month":"2127-15-31","prev_3_month":"2127-15-31","prev_4_month":"2127-15-31","prev_5_month":"2127-15-31","prev_6_month":"2127-15-31","prev_7_month":"2127-15-31","prev_8_month":"2127-15-31","prev_9_month":"2127-15-31","prev_10_month":"2127-15-31","prev_11_month":"2127-15-31","prev_12_month":"2127-15-31","prev_13_month":"2127-15-31","prev_14_month":"2127-15-31","prev_1_month_kwh":0,"prev_2_month_kwh":-2147483648,"prev_3_month_kwh":-2147483648,"prev_4_month_kwh":-2147483648,"prev_5_month_kwh":-2147483648,"prev_6_month_kwh":-2147483648,"prev_7_month_kwh":-2147483648,"prev_8_month_kwh":-2147483648,"prev_9_month_kwh":-2147483648,"prev_10_month_kwh":-2147483648,"prev_11_month_kwh":-2147483648,"prev_12_month_kwh":-2147483648,"prev_13_month_kwh":-2147483648,"prev_14_month_kwh":-2147483648,"total_energy_consumption_last_month_kwh":0,"timestamp":"1111-11-11T11:11:11Z"}
|
||||
// |Heat;55445555;0;0;ERROR REVERSE_FLOW SUPPLY_SENSOR_INTERRUPTED;1111-11-11 11:11.11
|
||||
|
||||
// Type T1A2 telegram:
|
||||
// telegram=|DA44496A5555445588077A320200002F2F_04140000000084800114000000008280016C2124C480011400000080C280016CFFFF84810114000000808281016CFFFFC481011400000080C281016CFFFF84820114000000808282016CFFFFC482011400000080C282016CFFFF84830114000000808283016CFFFFC483011400000080C283016CFFFF84840114000000808284016CFFFFC484011400000080C284016CFFFF84850114000000808285016CFFFFC485011400000080C285016CFFFF84860114000000808286016CFFFFC486011400000080C286016CFFFF|
|
||||
// {"id": "55445555","media": "water","meter": "c5isf","name": "Heat","prev_10_month": "2127-15-31","prev_10_month_kwh": 2147483648,"prev_10_month_m3": 21474836.48,"prev_11_month": "2127-15-31","prev_11_month_kwh": 2147483648,"prev_11_month_m3": 21474836.48,"prev_12_month": "2127-15-31","prev_12_month_kwh": 2147483648,"prev_12_month_m3": 21474836.48,"prev_13_month": "2127-15-31","prev_13_month_kwh": 2147483648,"prev_13_month_m3": 21474836.48,"prev_14_month": "2127-15-31","prev_14_month_kwh": 2147483648,"prev_14_month_m3": 21474836.48,"prev_1_month": "2017-04-01","prev_1_month_kwh": 0,"prev_1_month_m3": 0,"prev_2_month": "2127-15-31","prev_2_month_kwh": 2147483648,"prev_2_month_m3": 21474836.48,"prev_3_month": "2127-15-31","prev_3_month_kwh": 2147483648,"prev_3_month_m3": 21474836.48,"prev_4_month": "2127-15-31","prev_4_month_kwh": 2147483648,"prev_4_month_m3": 21474836.48,"prev_5_month": "2127-15-31","prev_5_month_kwh": 2147483648,"prev_5_month_m3": 21474836.48,"prev_6_month": "2127-15-31","prev_6_month_kwh": 2147483648,"prev_6_month_m3": 21474836.48,"prev_7_month": "2127-15-31","prev_7_month_kwh": 2147483648,"prev_7_month_m3": 21474836.48,"prev_8_month": "2127-15-31","prev_8_month_kwh": 2147483648,"prev_8_month_m3": 21474836.48,"prev_9_month": "2127-15-31","prev_9_month_kwh": 2147483648,"prev_9_month_m3": 21474836.48,"status": "ERROR","timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 0,"total_energy_consumption_last_month_kwh": 0,"total_volume_m3": 0}
|
||||
// {"id": "55445555","media": "water","meter": "c5isf","name": "Heat","prev_10_month": "2127-15-31","prev_10_month_kwh":-2147483648,"prev_10_month_m3":-21474836.48,"prev_11_month": "2127-15-31","prev_11_month_kwh":-2147483648,"prev_11_month_m3":-21474836.48,"prev_12_month": "2127-15-31","prev_12_month_kwh":-2147483648,"prev_12_month_m3":-21474836.48,"prev_13_month": "2127-15-31","prev_13_month_kwh":-2147483648,"prev_13_month_m3":-21474836.48,"prev_14_month": "2127-15-31","prev_14_month_kwh":-2147483648,"prev_14_month_m3":-21474836.48,"prev_1_month": "2017-04-01","prev_1_month_kwh": 0,"prev_1_month_m3": 0,"prev_2_month": "2127-15-31","prev_2_month_kwh":-2147483648,"prev_2_month_m3":-21474836.48,"prev_3_month": "2127-15-31","prev_3_month_kwh":-2147483648,"prev_3_month_m3":-21474836.48,"prev_4_month": "2127-15-31","prev_4_month_kwh":-2147483648,"prev_4_month_m3":-21474836.48,"prev_5_month": "2127-15-31","prev_5_month_kwh":-2147483648,"prev_5_month_m3":-21474836.48,"prev_6_month": "2127-15-31","prev_6_month_kwh":-2147483648,"prev_6_month_m3":-21474836.48,"prev_7_month": "2127-15-31","prev_7_month_kwh":-2147483648,"prev_7_month_m3":-21474836.48,"prev_8_month": "2127-15-31","prev_8_month_kwh":-2147483648,"prev_8_month_m3":-21474836.48,"prev_9_month": "2127-15-31","prev_9_month_kwh":-2147483648,"prev_9_month_m3":-21474836.48,"status": "ERROR","timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 0,"total_energy_consumption_last_month_kwh": 0,"total_volume_m3": 0}
|
||||
// |Heat;55445555;0;0;ERROR;1111-11-11 11:11.11
|
||||
|
||||
// Type T1B telegram:
|
||||
// telegram=|5E44496A5555445588047A0A0050052F2F_04061A0000000413C20800008404060000000082046CC121043BA4000000042D1900000002591216025DE21002FD17000084800106000000008280016CC121948001AE25000000002F2F2F2F2F2F|
|
||||
// {"due_date": "2022-01-01","due_energy_consumption_kwh": 0,"flow_temperature_c": 56.5,"id": "55445555","max_power_last_month_kw": 0,"media": "heat","meter": "c5isf","name": "Heat","power_kw": 2.5,"prev_10_month": "2127-15-31","prev_10_month_kwh": 2147483648,"prev_10_month_m3": 21474836.48,"prev_11_month": "2127-15-31","prev_11_month_kwh": 2147483648,"prev_11_month_m3": 21474836.48,"prev_12_month": "2127-15-31","prev_12_month_kwh": 2147483648,"prev_12_month_m3": 21474836.48,"prev_13_month": "2127-15-31","prev_13_month_kwh": 2147483648,"prev_13_month_m3": 21474836.48,"prev_14_month": "2127-15-31","prev_14_month_kwh": 2147483648,"prev_14_month_m3": 21474836.48,"prev_1_month": "2022-01-01","prev_1_month_kwh": 0,"prev_1_month_m3": 0,"prev_2_month": "2127-15-31","prev_2_month_kwh": 2147483648,"prev_2_month_m3": 21474836.48,"prev_3_month": "2127-15-31","prev_3_month_kwh": 2147483648,"prev_3_month_m3": 21474836.48,"prev_4_month": "2127-15-31","prev_4_month_kwh": 2147483648,"prev_4_month_m3": 21474836.48,"prev_5_month": "2127-15-31","prev_5_month_kwh": 2147483648,"prev_5_month_m3": 21474836.48,"prev_6_month": "2127-15-31","prev_6_month_kwh": 2147483648,"prev_6_month_m3": 21474836.48,"prev_7_month": "2127-15-31","prev_7_month_kwh": 2147483648,"prev_7_month_m3": 21474836.48,"prev_8_month": "2127-15-31","prev_8_month_kwh": 2147483648,"prev_8_month_m3": 21474836.48,"prev_9_month": "2127-15-31","prev_9_month_kwh": 2147483648,"prev_9_month_m3": 21474836.48,"return_temperature_c": 43.22,"status": "OK","timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 26,"total_energy_consumption_last_month_kwh": 0,"total_volume_m3": 2.242,"volume_flow_m3h": 0.164}
|
||||
// {"due_date": "2022-01-01","due_energy_consumption_kwh": 0,"flow_temperature_c": 56.5,"id": "55445555","max_power_last_month_kw": 0,"media": "heat","meter": "c5isf","name": "Heat","power_kw": 2.5,"prev_10_month": "2127-15-31","prev_10_month_kwh":-2147483648,"prev_10_month_m3":-21474836.48,"prev_11_month": "2127-15-31","prev_11_month_kwh":-2147483648,"prev_11_month_m3":-21474836.48,"prev_12_month": "2127-15-31","prev_12_month_kwh":-2147483648,"prev_12_month_m3":-21474836.48,"prev_13_month": "2127-15-31","prev_13_month_kwh":-2147483648,"prev_13_month_m3":-21474836.48,"prev_14_month": "2127-15-31","prev_14_month_kwh":-2147483648,"prev_14_month_m3":-21474836.48,"prev_1_month": "2022-01-01","prev_1_month_kwh": 0,"prev_1_month_m3": 0,"prev_2_month": "2127-15-31","prev_2_month_kwh":-2147483648,"prev_2_month_m3":-21474836.48,"prev_3_month": "2127-15-31","prev_3_month_kwh":-2147483648,"prev_3_month_m3":-21474836.48,"prev_4_month": "2127-15-31","prev_4_month_kwh":-2147483648,"prev_4_month_m3":-21474836.48,"prev_5_month": "2127-15-31","prev_5_month_kwh":-2147483648,"prev_5_month_m3":-21474836.48,"prev_6_month": "2127-15-31","prev_6_month_kwh":-2147483648,"prev_6_month_m3":-21474836.48,"prev_7_month": "2127-15-31","prev_7_month_kwh":-2147483648,"prev_7_month_m3":-21474836.48,"prev_8_month": "2127-15-31","prev_8_month_kwh":-2147483648,"prev_8_month_m3":-21474836.48,"prev_9_month": "2127-15-31","prev_9_month_kwh":-2147483648,"prev_9_month_m3":-21474836.48,"return_temperature_c": 43.22,"status": "OK","timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 26,"total_energy_consumption_last_month_kwh": 0,"total_volume_m3": 2.242,"volume_flow_m3h": 0.164}
|
||||
// |Heat;55445555;26;2.242;OK;1111-11-11 11:11.11
|
||||
|
||||
// Test: Heat c5isf 32002044 NOKEY
|
||||
|
|
|
@ -51,7 +51,7 @@ namespace
|
|||
"The current temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -62,7 +62,7 @@ namespace
|
|||
"The average temperature over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
|
|
@ -61,7 +61,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -30,6 +30,7 @@ void check_detection_triplets(DriverInfo *di, string file);
|
|||
string check_field_name(const char *name, DriverDynamic *dd);
|
||||
Quantity check_field_quantity(const char *quantity_s, DriverDynamic *dd);
|
||||
VifScaling check_vif_scaling(const char *vif_scaling_s, DriverDynamic *dd);
|
||||
DifSignedness check_dif_signedness(const char *dif_signedness_s, DriverDynamic *dd);
|
||||
PrintProperties check_print_properties(const char *print_properties_s, DriverDynamic *dd);
|
||||
string get_translation(XMQDoc *doc, XMQNode *node, string name, string lang);
|
||||
string check_calculate(const char *formula, DriverDynamic *dd);
|
||||
|
@ -269,6 +270,9 @@ XMQProceed DriverDynamic::add_field(XMQDoc *doc, XMQNode *field, DriverDynamic *
|
|||
// The vif scaling is by default Auto but can be overriden for pesky fields.
|
||||
VifScaling vif_scaling = check_vif_scaling(xmqGetString(doc, field, "vif_scaling"), dd);
|
||||
|
||||
// The dif signedness is by default Signed but can be overriden for pesky fields.
|
||||
DifSignedness dif_signedness = check_dif_signedness(xmqGetString(doc, field, "dif_signedness"), dd);
|
||||
|
||||
// The properties are by default empty but can be specified for specific fields.
|
||||
PrintProperties properties = check_print_properties(xmqGetString(doc, field, "attributes"), dd);
|
||||
|
||||
|
@ -313,6 +317,7 @@ XMQProceed DriverDynamic::add_field(XMQDoc *doc, XMQNode *field, DriverDynamic *
|
|||
properties,
|
||||
quantity,
|
||||
vif_scaling,
|
||||
dif_signedness,
|
||||
match,
|
||||
display_unit
|
||||
);
|
||||
|
@ -635,12 +640,12 @@ VifScaling check_vif_scaling(const char *vif_scaling_s, DriverDynamic *dd)
|
|||
warning("(driver) error in %s, bad vif scaling: %s\n",
|
||||
"%s\n"
|
||||
"Available vif scalings:\n"
|
||||
"%s\n"
|
||||
"Auto\n"
|
||||
"None\n"
|
||||
"%s\n",
|
||||
dd->fileName().c_str(),
|
||||
vif_scaling_s,
|
||||
line,
|
||||
"???",
|
||||
line);
|
||||
throw 1;
|
||||
}
|
||||
|
@ -648,6 +653,33 @@ VifScaling check_vif_scaling(const char *vif_scaling_s, DriverDynamic *dd)
|
|||
return vif_scaling;
|
||||
}
|
||||
|
||||
DifSignedness check_dif_signedness(const char *dif_signedness_s, DriverDynamic *dd)
|
||||
{
|
||||
if (!dif_signedness_s)
|
||||
{
|
||||
return DifSignedness::Signed;
|
||||
}
|
||||
|
||||
DifSignedness dif_signedness = toDifSignedness(dif_signedness_s);
|
||||
|
||||
if (dif_signedness == DifSignedness::Unknown)
|
||||
{
|
||||
warning("(driver) error in %s, bad dif signedness: %s\n",
|
||||
"%s\n"
|
||||
"Available dif signedness:\n"
|
||||
"Signed\n"
|
||||
"Unsigned\n"
|
||||
"%s\n",
|
||||
dd->fileName().c_str(),
|
||||
dif_signedness_s,
|
||||
line,
|
||||
line);
|
||||
throw 1;
|
||||
}
|
||||
|
||||
return dif_signedness;
|
||||
}
|
||||
|
||||
PrintProperties check_print_properties(const char *print_properties_s, DriverDynamic *dd)
|
||||
{
|
||||
if (!print_properties_s)
|
||||
|
|
|
@ -41,7 +41,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -52,7 +52,7 @@ namespace
|
|||
"Current power consumption at phase 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04A9FF01"))
|
||||
);
|
||||
|
@ -62,7 +62,7 @@ namespace
|
|||
"Current power consumption at phase 2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04A9FF02"))
|
||||
);
|
||||
|
@ -72,7 +72,7 @@ namespace
|
|||
"Current power consumption at phase 3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04A9FF03"))
|
||||
);
|
||||
|
@ -92,7 +92,7 @@ namespace
|
|||
"Calculated sum of power consumption of all phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
|
|
@ -47,7 +47,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -58,7 +58,7 @@ namespace
|
|||
"Current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -69,7 +69,7 @@ namespace
|
|||
"The total energy production recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
|
|
@ -90,7 +90,7 @@ namespace
|
|||
"Number of times the smoke alarm has triggered.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(SubUnitNr(1))
|
||||
|
@ -121,7 +121,7 @@ namespace
|
|||
"Time the smoke alarm has been removed.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(SubUnitNr(1))
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"Number of times the smoke alarm has been removed.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(SubUnitNr(1))
|
||||
|
@ -169,7 +169,7 @@ namespace
|
|||
"Number of times the test button has been pressed.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(SubUnitNr(1))
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -80,7 +80,7 @@ namespace
|
|||
"Current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::PowerW)
|
||||
|
@ -91,7 +91,7 @@ namespace
|
|||
"Total volume of heat media.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -102,7 +102,7 @@ namespace
|
|||
"The total energy consumption recorded at the target date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -114,7 +114,7 @@ namespace
|
|||
"The flow temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -125,7 +125,7 @@ namespace
|
|||
"The return temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -136,7 +136,7 @@ namespace
|
|||
"The external temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -147,7 +147,7 @@ namespace
|
|||
"How long the meter has been collecting data.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::OperatingTime)
|
||||
|
@ -167,7 +167,7 @@ namespace
|
|||
"Battery voltage.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
|
|
@ -101,7 +101,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -112,7 +112,7 @@ namespace
|
|||
"Power measured by this meter at the moment.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -123,7 +123,7 @@ namespace
|
|||
"The total energy backward (production) recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -135,7 +135,7 @@ namespace
|
|||
"The reactive total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Reactive_Energy,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FB8275"))
|
||||
);
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"The total reactive energy backward (production) recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Reactive_Energy,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(DifVifKey("04FB82F53C"))
|
||||
|
@ -177,7 +177,7 @@ namespace
|
|||
"Amperage at phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FDD9FC01"))
|
||||
);
|
||||
|
@ -187,7 +187,7 @@ namespace
|
|||
"Amperage at phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FDD9FC02"))
|
||||
);
|
||||
|
@ -197,7 +197,7 @@ namespace
|
|||
"Amperage at phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FDD9FC03"))
|
||||
);
|
||||
|
@ -207,7 +207,7 @@ namespace
|
|||
"Voltage at phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FDC8FC01"))
|
||||
);
|
||||
|
@ -217,7 +217,7 @@ namespace
|
|||
"Voltage at phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FDC8FC02"))
|
||||
);
|
||||
|
@ -227,7 +227,7 @@ namespace
|
|||
"Voltage at phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FDC8FC03"))
|
||||
);
|
||||
|
@ -237,7 +237,7 @@ namespace
|
|||
"Frequency in 0.1 Hz",
|
||||
DEFAULT_PRINT_PROPERTIES | PrintProperty::HIDE,
|
||||
Quantity::Frequency,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FB2E"))
|
||||
);
|
||||
|
|
|
@ -42,7 +42,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -53,7 +53,7 @@ namespace
|
|||
"The target water consumption recorded at previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -45,7 +45,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -56,7 +56,7 @@ namespace
|
|||
"The energy consumption recorded by this meter at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -68,7 +68,7 @@ namespace
|
|||
"The active power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -79,7 +79,7 @@ namespace
|
|||
"The flow of water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -90,7 +90,7 @@ namespace
|
|||
"The maximum forward flow of water since the last set date?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -101,7 +101,7 @@ namespace
|
|||
"The forward temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -112,7 +112,7 @@ namespace
|
|||
"The return temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -123,7 +123,7 @@ namespace
|
|||
"The temperature difference forward-return for the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::TemperatureDifference)
|
||||
|
@ -134,7 +134,7 @@ namespace
|
|||
"The total amount of water that has passed through this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"The amount of water that had passed through this meter at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -157,7 +157,7 @@ namespace
|
|||
"The amount of water that has passed through subunit 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -169,7 +169,7 @@ namespace
|
|||
"The amount of water that had passed through the subunit 1 at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -182,7 +182,7 @@ namespace
|
|||
"The current heat cost allocation for subunit 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -194,7 +194,7 @@ namespace
|
|||
"The heat cost allocation for subunit 1 at the target date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -207,7 +207,7 @@ namespace
|
|||
"The current heat cost allocation for subunit 2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -219,7 +219,7 @@ namespace
|
|||
"The heat cost allocation for subunit 2 at the target date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
|
|
@ -78,7 +78,7 @@ namespace
|
|||
"The water consumption at the last billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
info,
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -53,7 +53,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -64,7 +64,7 @@ namespace
|
|||
"Calculated sum of power consumption of all phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -75,7 +75,7 @@ namespace
|
|||
"The total energy production recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -87,7 +87,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter on tariff 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -99,7 +99,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter on tariff 2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -111,7 +111,7 @@ namespace
|
|||
"Current power consumption phase 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04A9FF01"))
|
||||
);
|
||||
|
@ -121,7 +121,7 @@ namespace
|
|||
"Current power consumption phase 2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04A9FF02"))
|
||||
);
|
||||
|
@ -131,7 +131,7 @@ namespace
|
|||
"Current power consumption phase 3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04A9FF03"))
|
||||
);
|
||||
|
|
|
@ -98,7 +98,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -109,7 +109,7 @@ namespace
|
|||
"The heat cost allocation at set date #.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -121,7 +121,7 @@ namespace
|
|||
"Deprecated field.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
|
|
@ -42,7 +42,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -53,7 +53,7 @@ namespace
|
|||
"The target water consumption recorded at previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -67,7 +67,7 @@ namespace
|
|||
"The total water consumption at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -89,7 +89,7 @@ namespace
|
|||
"The total water consumption at the second most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -111,7 +111,7 @@ namespace
|
|||
"Maximum water flow since date time.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -133,7 +133,7 @@ namespace
|
|||
"The total water consumption at the historic date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"Reference date for history.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
|
|
@ -50,7 +50,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
);
|
||||
|
@ -69,7 +69,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(1))
|
||||
|
@ -89,7 +89,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(1))
|
||||
|
@ -109,7 +109,7 @@ namespace
|
|||
"Heat cost allocation at the 8 billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(8))
|
||||
|
|
|
@ -71,7 +71,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -82,7 +82,7 @@ namespace
|
|||
"The total water consumption recorded at the beginning of this month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -104,7 +104,7 @@ namespace
|
|||
"The current flow of water through the meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -115,7 +115,7 @@ namespace
|
|||
"The water temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -127,7 +127,7 @@ namespace
|
|||
"The maximum water temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -139,7 +139,7 @@ namespace
|
|||
"The external temperature outside of the meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -151,7 +151,7 @@ namespace
|
|||
"The maximum flow recorded during previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -163,7 +163,7 @@ namespace
|
|||
"The minimum flow recorded during previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -175,7 +175,7 @@ namespace
|
|||
"The maximum temperature recorded during previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -187,7 +187,7 @@ namespace
|
|||
"The minimum flow recorded during previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -199,7 +199,7 @@ namespace
|
|||
"The maximum flow recorded during previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
|
|
@ -141,7 +141,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -152,7 +152,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -164,7 +164,7 @@ namespace
|
|||
"Last day?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -176,7 +176,7 @@ namespace
|
|||
"Last day energy consumption?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -188,7 +188,7 @@ namespace
|
|||
"Last day energy consumption for tariff?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -201,7 +201,7 @@ namespace
|
|||
"Device date time when telegram was sent.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -212,7 +212,7 @@ namespace
|
|||
"Voltage for single phase meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -224,7 +224,7 @@ namespace
|
|||
"Voltage at phase L#.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -236,7 +236,7 @@ namespace
|
|||
"Amperage for single phase meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -248,7 +248,7 @@ namespace
|
|||
"Amperage at phase L#.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -260,7 +260,7 @@ namespace
|
|||
"Raw input to frequency.",
|
||||
DEFAULT_PRINT_PROPERTIES | PrintProperty::HIDE,
|
||||
Quantity::Frequency,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FB2D"))
|
||||
);
|
||||
|
|
|
@ -100,5 +100,5 @@ namespace
|
|||
|
||||
// Test: Wateroo gwfwater 20221031 NOKEY
|
||||
// telegram=|3144E61E31102220010E8C04F47ABE0420452F2F_037410000004133E0000004413FFFFFFFF426CFFFF0F0120012F2F2F2F2F|
|
||||
// {"actuality_duration_s": 16,"battery_y": 0,"id": "20221031","media": "bus/system component","meter": "gwfwater","name": "Wateroo","power_mode": "SAVING","status": "BATTERY_LOW POWER_LOW","target_date": "2128-03-31","target_m3": 4294967.295,"timestamp": "1111-11-11T11:11:11Z","total_m3": 0.062}
|
||||
// {"actuality_duration_s": 16,"battery_y": 0,"id": "20221031","media": "bus/system component","meter": "gwfwater","name": "Wateroo","power_mode": "SAVING","status": "BATTERY_LOW POWER_LOW","target_date": "2128-03-31","target_m3": -0.001,"timestamp": "1111-11-11T11:11:11Z","total_m3": 0.062}
|
||||
// |Wateroo;20221031;0.062;1111-11-11 11:11.11
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -80,7 +80,7 @@ namespace
|
|||
"The heat cost allocation at set date #.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -92,7 +92,7 @@ namespace
|
|||
"Deprecated field.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
|
|
@ -55,7 +55,7 @@ namespace
|
|||
"The total heating energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -67,7 +67,7 @@ namespace
|
|||
"The date time when the recording was made.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -78,7 +78,7 @@ namespace
|
|||
"The total cooling energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -90,7 +90,7 @@ namespace
|
|||
"Total heating volume of media.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -102,7 +102,7 @@ namespace
|
|||
"Total cooling volume of media.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -114,7 +114,7 @@ namespace
|
|||
"Supply c1 volume.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -126,7 +126,7 @@ namespace
|
|||
"Return c2 volume.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -138,7 +138,7 @@ namespace
|
|||
"The supply t1 pipe temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -150,7 +150,7 @@ namespace
|
|||
"The return t2 pipe temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
|
|
@ -45,7 +45,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
|
|
@ -44,7 +44,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -55,7 +55,7 @@ namespace
|
|||
"Meter timestamp for measurement.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime),
|
||||
|
|
|
@ -57,7 +57,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -68,7 +68,7 @@ namespace
|
|||
"The total water consumption recorded on tariff # by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -80,7 +80,7 @@ namespace
|
|||
"The total water consumption recorded on tariff # by this meter at billing date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -93,7 +93,7 @@ namespace
|
|||
"The current water flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow));
|
||||
|
@ -103,7 +103,7 @@ namespace
|
|||
"The total water consumption recorded at date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -115,7 +115,7 @@ namespace
|
|||
"The last billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -128,7 +128,7 @@ namespace
|
|||
"The total water consumption recorded at the end of last month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -140,7 +140,7 @@ namespace
|
|||
"The end of last month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -152,7 +152,7 @@ namespace
|
|||
"Remaining battery life in years.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RemainingBattery),
|
||||
|
|
|
@ -72,7 +72,7 @@ namespace
|
|||
"Total cumulative active imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -83,7 +83,7 @@ namespace
|
|||
"Partial cumulative active imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
"Partial cumulative reactive imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -108,7 +108,7 @@ namespace
|
|||
"Total cumulative active imported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -120,7 +120,7 @@ namespace
|
|||
"Total cumulative active exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -132,7 +132,7 @@ namespace
|
|||
"Total cumulative active exported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"Active tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF10")),
|
||||
Unit::NUMBER
|
||||
|
@ -156,7 +156,7 @@ namespace
|
|||
"Current transformer ratio (numerator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA015")),
|
||||
Unit::NUMBER
|
||||
|
@ -167,7 +167,7 @@ namespace
|
|||
"Voltage transformer ratio (numerator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA115")),
|
||||
Unit::NUMBER
|
||||
|
@ -178,7 +178,7 @@ namespace
|
|||
"Current transformer ratio (denominator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA215")),
|
||||
Unit::NUMBER
|
||||
|
@ -189,7 +189,7 @@ namespace
|
|||
"Voltage transformer ratio (denominator).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA315")),
|
||||
Unit::NUMBER
|
||||
|
@ -272,7 +272,7 @@ namespace
|
|||
"Power fail counter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FF9800"))
|
||||
);
|
||||
|
@ -282,7 +282,7 @@ namespace
|
|||
"Instantaneous total active imported power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -293,7 +293,7 @@ namespace
|
|||
"Instantaneous active imported power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -305,7 +305,7 @@ namespace
|
|||
"Instantaneous active imported power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -317,7 +317,7 @@ namespace
|
|||
"Instantaneous active imported power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -329,7 +329,7 @@ namespace
|
|||
"Instantaneous total reactive imported power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -341,7 +341,7 @@ namespace
|
|||
"Instantaneous reactive imported power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -354,7 +354,7 @@ namespace
|
|||
"Instantaneous reactive imported power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -367,7 +367,7 @@ namespace
|
|||
"Instantaneous reactive imported power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -380,7 +380,7 @@ namespace
|
|||
"Instantaneous total apparent imported power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -392,7 +392,7 @@ namespace
|
|||
"Instantaneous apparent imported power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -405,7 +405,7 @@ namespace
|
|||
"Instantaneous apparent imported power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -418,7 +418,7 @@ namespace
|
|||
"Instantaneous apparent imported power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -431,7 +431,7 @@ namespace
|
|||
"Instantaneous voltage between L1 and neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -443,7 +443,7 @@ namespace
|
|||
"Instantaneous voltage between L2 and neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -455,7 +455,7 @@ namespace
|
|||
"Instantaneous voltage between L3 and neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -467,7 +467,7 @@ namespace
|
|||
"Average voltage line to neutral.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -479,7 +479,7 @@ namespace
|
|||
"Instantaneous voltage between L1 and L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -491,7 +491,7 @@ namespace
|
|||
"Instantaneous voltage between L2 and L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -503,7 +503,7 @@ namespace
|
|||
"Instantaneous voltage between L3 and L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -515,7 +515,7 @@ namespace
|
|||
"Average voltage line to line.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -527,7 +527,7 @@ namespace
|
|||
"Instantaneous current in the L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -539,7 +539,7 @@ namespace
|
|||
"Instantaneous current in the L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -551,7 +551,7 @@ namespace
|
|||
"Instantaneous current in the L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -563,7 +563,7 @@ namespace
|
|||
"Average current in all phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -575,7 +575,7 @@ namespace
|
|||
"Frequency of AC",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Frequency,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("05FF0B")),
|
||||
Unit::HZ);
|
||||
|
@ -585,7 +585,7 @@ namespace
|
|||
"Power factor.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("05FF0A")),
|
||||
Unit::FACTOR);
|
||||
|
@ -595,7 +595,7 @@ namespace
|
|||
"Power factor for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE0FF8100")),
|
||||
Unit::FACTOR,
|
||||
|
@ -607,7 +607,7 @@ namespace
|
|||
"Power factor for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE0FF8200")),
|
||||
Unit::FACTOR,
|
||||
|
@ -619,7 +619,7 @@ namespace
|
|||
"Power factor.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFE0FF8300")),
|
||||
Unit::FACTOR,
|
||||
|
@ -631,7 +631,7 @@ namespace
|
|||
"Total power phase angle.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD200")),
|
||||
Unit::DEGREE,
|
||||
|
@ -643,7 +643,7 @@ namespace
|
|||
"Power phase angle for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD2FF8100")),
|
||||
Unit::DEGREE,
|
||||
|
@ -655,7 +655,7 @@ namespace
|
|||
"Power phase angle for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD2FF8200")),
|
||||
Unit::DEGREE,
|
||||
|
@ -667,7 +667,7 @@ namespace
|
|||
"Power phase angle for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Angle,
|
||||
VifScaling::NoneSigned,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FFD2FF8300")),
|
||||
Unit::DEGREE,
|
||||
|
@ -679,7 +679,7 @@ namespace
|
|||
"Total cumulative reactive kvarh imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Reactive_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -692,7 +692,7 @@ namespace
|
|||
"Total cumulative reactive kvarh imported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -705,7 +705,7 @@ namespace
|
|||
"Total cumulative reactive kvarh exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Reactive_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -719,7 +719,7 @@ namespace
|
|||
"Total cumulative reactive kvarh exported energy per tariff.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -732,7 +732,7 @@ namespace
|
|||
"The quadrant in which the current is measured.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF9700")),
|
||||
Unit::NUMBER
|
||||
|
@ -743,7 +743,7 @@ namespace
|
|||
"The quadrant in which the current is measured for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF97FF8100")),
|
||||
Unit::NUMBER
|
||||
|
@ -754,7 +754,7 @@ namespace
|
|||
"The quadrant in which the current is measured for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF97FF8200")),
|
||||
Unit::NUMBER
|
||||
|
@ -765,7 +765,7 @@ namespace
|
|||
"The quadrant in which the current is measured for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FF97FF8300")),
|
||||
Unit::NUMBER
|
||||
|
@ -776,7 +776,7 @@ namespace
|
|||
"Input metering accumulation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::CumulationCounter)
|
||||
|
@ -787,7 +787,7 @@ namespace
|
|||
"Energy pulse duration.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(DifVifKey("03FF2C"))
|
||||
|
@ -798,7 +798,7 @@ namespace
|
|||
"Energy pulse weight.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(DifVifKey("05FF2E"))
|
||||
|
@ -809,7 +809,7 @@ namespace
|
|||
"Energy pulse constant.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(DifVifKey("05FF2F"))
|
||||
|
@ -820,7 +820,7 @@ namespace
|
|||
"Resettable cumulative active imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -832,7 +832,7 @@ namespace
|
|||
"Resettable cumulative active exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -845,7 +845,7 @@ namespace
|
|||
"Resettable cumulative reactive imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -858,7 +858,7 @@ namespace
|
|||
"Resettable cumulative reactive exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -871,7 +871,7 @@ namespace
|
|||
"Number of times the resettable energy imported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -882,7 +882,7 @@ namespace
|
|||
"Number of times the resettable active energy exported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -894,7 +894,7 @@ namespace
|
|||
"Number of times the resettable reactive energy imported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -906,7 +906,7 @@ namespace
|
|||
"Number of times the resettable reactive energy exported value has been reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRaw(0x7f71))
|
||||
|
@ -918,7 +918,7 @@ namespace
|
|||
"Energy in co2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Mass,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0EFFF9C400")),
|
||||
Unit::KG,
|
||||
|
@ -930,7 +930,7 @@ namespace
|
|||
"CO2 conversion factor (kg * 10-3 /kWh).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA400")),
|
||||
Unit::FACTOR
|
||||
|
@ -941,7 +941,7 @@ namespace
|
|||
"Energy in currency.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0EFFF9C900"))
|
||||
);
|
||||
|
@ -951,7 +951,7 @@ namespace
|
|||
"Currency conversion factor (curr * 10-3 /kWh).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FFA500")),
|
||||
Unit::FACTOR
|
||||
|
@ -962,7 +962,7 @@ namespace
|
|||
"Total cumulative apparent kvah imported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Apparent_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -975,7 +975,7 @@ namespace
|
|||
"Total cumulative apparent kvah exported energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Apparent_Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -988,7 +988,7 @@ namespace
|
|||
"Total imported active energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1000,7 +1000,7 @@ namespace
|
|||
"Total imported active energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1012,7 +1012,7 @@ namespace
|
|||
"Total imported active energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1024,7 +1024,7 @@ namespace
|
|||
"Total imported reactive energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1037,7 +1037,7 @@ namespace
|
|||
"Total imported reactive energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1050,7 +1050,7 @@ namespace
|
|||
"Total imported reactive energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1063,7 +1063,7 @@ namespace
|
|||
"Total imported apparent energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1076,7 +1076,7 @@ namespace
|
|||
"Total imported apparent energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1089,7 +1089,7 @@ namespace
|
|||
"Total imported apparent energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1102,7 +1102,7 @@ namespace
|
|||
"Total exported active energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1115,7 +1115,7 @@ namespace
|
|||
"Total exported active energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1128,7 +1128,7 @@ namespace
|
|||
"Total exported active energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1141,7 +1141,7 @@ namespace
|
|||
"Total exported reactive energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1154,7 +1154,7 @@ namespace
|
|||
"Total exported reactive energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1167,7 +1167,7 @@ namespace
|
|||
"Total exported reactive energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1180,7 +1180,7 @@ namespace
|
|||
"Total exported apparent energy for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1193,7 +1193,7 @@ namespace
|
|||
"Total exported apparent energy for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1206,7 +1206,7 @@ namespace
|
|||
"Total exported apparent energy for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1219,7 +1219,7 @@ namespace
|
|||
"Active net energy total.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1231,7 +1231,7 @@ namespace
|
|||
"Active net energy total for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1244,7 +1244,7 @@ namespace
|
|||
"Active net energy total for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1257,7 +1257,7 @@ namespace
|
|||
"Active net energy total for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1270,7 +1270,7 @@ namespace
|
|||
"Active net energy total.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1283,7 +1283,7 @@ namespace
|
|||
"Active net reactive energy total for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1297,7 +1297,7 @@ namespace
|
|||
"Active net reactive energy total for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1311,7 +1311,7 @@ namespace
|
|||
"Active net reactive energy total for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1325,7 +1325,7 @@ namespace
|
|||
"Active net energy total.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1338,7 +1338,7 @@ namespace
|
|||
"Active net apparent energy total for phase L1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1352,7 +1352,7 @@ namespace
|
|||
"Active net apparent energy total for phase L2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1366,7 +1366,7 @@ namespace
|
|||
"Active net apparent energy total for phase L3.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -1380,7 +1380,7 @@ namespace
|
|||
"Date and time of last partial energy reset,",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -1392,7 +1392,7 @@ namespace
|
|||
"Date and time of last input metering reset.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -1488,7 +1488,7 @@ namespace
|
|||
"Pickup setpoint.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("05FF35")));
|
||||
|
||||
|
@ -1521,7 +1521,7 @@ namespace
|
|||
"Date and time of last alarm.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -1533,7 +1533,7 @@ namespace
|
|||
"Last alarm value.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("05FF3A")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1543,7 +1543,7 @@ namespace
|
|||
"Operating time. Unit is unknown, please fix!",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("06FF20")),
|
||||
Unit::Year);
|
||||
|
@ -1553,7 +1553,7 @@ namespace
|
|||
"Number of phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF21")));
|
||||
|
||||
|
@ -1562,7 +1562,7 @@ namespace
|
|||
"Number of wires.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF22")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1572,7 +1572,7 @@ namespace
|
|||
"Number of voltaget transformers VT:s.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF25")));
|
||||
|
||||
|
@ -1581,7 +1581,7 @@ namespace
|
|||
"Primary voltage transformer VT.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("05FF26")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1591,7 +1591,7 @@ namespace
|
|||
"Secondary voltage transformer VT.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF27")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1601,7 +1601,7 @@ namespace
|
|||
"Number of current transformers CT:s.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF28")));
|
||||
|
||||
|
@ -1610,7 +1610,7 @@ namespace
|
|||
"Primary current transformer CT.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF29")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1620,7 +1620,7 @@ namespace
|
|||
"Secondary current transformer CT.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF2A")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1630,7 +1630,7 @@ namespace
|
|||
"Voltage transformer connection type.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF2B")),
|
||||
Unit::NUMBER);
|
||||
|
@ -1652,7 +1652,7 @@ namespace
|
|||
"Nominal frequency.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Frequency,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("03FF24")),
|
||||
Unit::HZ);
|
||||
|
|
|
@ -75,7 +75,7 @@ namespace
|
|||
"The total water consumption recorded at the end of previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright (C) 2018-2022 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
Copyright (C) 2018-2024 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
Copyright (C) 2020 Eric Bus (gpl-3.0-or-later)
|
||||
Copyright (C) 2022 thecem (gpl-3.0-or-later)
|
||||
|
||||
|
@ -120,7 +120,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -131,7 +131,7 @@ namespace
|
|||
"The volume of water (3/68/Volume V1).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -142,7 +142,7 @@ namespace
|
|||
"The actual amount of water that pass through this meter (8/74/Flow V1 actual).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -153,7 +153,7 @@ namespace
|
|||
"The current power flowing.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -164,7 +164,7 @@ namespace
|
|||
"The maximum power supplied.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -175,7 +175,7 @@ namespace
|
|||
"The forward temperature of the water (6/86/t2 actual 2 decimals).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -186,7 +186,7 @@ namespace
|
|||
"The return temperature of the water (7/87/t2 actual 2 decimals).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -197,7 +197,7 @@ namespace
|
|||
"The maximum flow of water that passed through this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -208,7 +208,7 @@ namespace
|
|||
"The forward energy of the water (4/97/Energy E8).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FF07")),
|
||||
Unit::M3C);
|
||||
|
@ -218,7 +218,7 @@ namespace
|
|||
"The return energy of the water (5/110/Energy E9).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04FF08")),
|
||||
Unit::M3C);
|
||||
|
@ -237,7 +237,7 @@ namespace
|
|||
"The energy consumption recorded by this meter at the set date (11/60/Heat energy E1/026C).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -249,7 +249,7 @@ namespace
|
|||
"The amount of water that had passed through this meter at the set date (13/68/Volume V1).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -271,7 +271,7 @@ namespace
|
|||
"How long the meter has been collecting data.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::OperatingTime)
|
||||
|
@ -314,11 +314,11 @@ namespace
|
|||
|
||||
// Test: My403Cooling multical403 78780102 NOKEY
|
||||
// telegram=|88442D2C02017878340A8D208D529C132037FC78_040E2D0A000004FF07F8FF000004FF08401801000413C1900500844014000000008480401400000000043BED0000000259BC06025DCD07142DE7FFFFFF84100E0000000084200E0000000004FF2200000000026C9228440E5F0300004413960D0200C4401400000000C480401400000000426C8128|
|
||||
// {"forward_energy_m3c": 65528,"id": "78780102","max_power_kw": 429496727.1,"media": "cooling load volume at outlet","meter": "kamheat","meter_date": "2020-08-18","name": "My403Cooling","return_energy_m3c": 71744,"status": "OK","t1_temperature_c": 17.24,"t2_temperature_c": 19.97,"target_date": "2020-08-01","target_energy_kwh": 239.722222,"target_volume_m3": 134.55,"timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 723.611111,"total_volume_m3": 364.737,"volume_flow_m3h": 0.237}
|
||||
// {"forward_energy_m3c": 65528,"id": "78780102","max_power_kw": -2.5,"media": "cooling load volume at outlet","meter": "kamheat","meter_date": "2020-08-18","name": "My403Cooling","return_energy_m3c": 71744,"status": "OK","t1_temperature_c": 17.24,"t2_temperature_c": 19.97,"target_date": "2020-08-01","target_energy_kwh": 239.722222,"target_volume_m3": 134.55,"timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 723.611111,"total_volume_m3": 364.737,"volume_flow_m3h": 0.237}
|
||||
// |My403Cooling;78780102;723.611111;364.737;OK;1111-11-11 11:11.11
|
||||
|
||||
// telegram=|5B442D2C02017878340A8D2096809C1320EF2B7934147ED7_2D0A0000FAFF000043180100CE9005000000000000000000EE000000BA06CB07E7FFFFFF00000000000000000000000092285F030000960D020000000000000000008128|
|
||||
// {"forward_energy_m3c": 65530,"id": "78780102","max_power_kw": 429496727.1,"media": "cooling load volume at outlet","meter": "kamheat","meter_date": "2020-08-18","name": "My403Cooling","return_energy_m3c": 71747,"status": "OK","t1_temperature_c": 17.22,"t2_temperature_c": 19.95,"target_date": "2020-08-01","target_energy_kwh": 239.722222,"target_volume_m3": 134.55,"timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 723.611111,"total_volume_m3": 364.75,"volume_flow_m3h": 0.238}
|
||||
// {"forward_energy_m3c": 65530,"id": "78780102","max_power_kw": -2.5,"media": "cooling load volume at outlet","meter": "kamheat","meter_date": "2020-08-18","name": "My403Cooling","return_energy_m3c": 71747,"status": "OK","t1_temperature_c": 17.22,"t2_temperature_c": 19.95,"target_date": "2020-08-01","target_energy_kwh": 239.722222,"target_volume_m3": 134.55,"timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 723.611111,"total_volume_m3": 364.75,"volume_flow_m3h": 0.238}
|
||||
// |My403Cooling;78780102;723.611111;364.75;OK;1111-11-11 11:11.11
|
||||
|
||||
// Test: Heato multical602 78152801 NOKEY
|
||||
|
@ -354,3 +354,8 @@ namespace
|
|||
// telegram=|68c9c96808e672323232322d2c35041900000004fB006083000004ff074006010004ff08299400000416984e010084401400000000848040140000000004225043000034221c0000000259c91f025d4f1102617a0e042e30020000142e65030000043c24050000143ce308000004ff2200000000046d2e2B0f3144fB00007d000044ff07Bdf9000044ff08308d00004416B73f0100c4401400000000c480401400000000542ed9020000543ce8090000426c013102ff1a011B0c783032858404ff16e5841e0004ff17c1d5B400a516|
|
||||
// {"fabrication_no": "84853230", "flow_return_temperature_difference_c": 37.06, "forward_energy_m3c": 67136, "id": "32323232", "max_flow_m3h": 22.75, "max_power_kw": 869, "media": "heat", "meter": "kamheat", "meter_datetime": "2024-01-15 11:46", "name": "Kamstrup_MC603_mbus", "on_time_at_error_h": 28, "on_time_h": 17232, "power_kw": 560, "return_energy_m3c": 37929, "status": "OK", "t1_temperature_c": 81.37, "t2_temperature_c": 44.31, "target_date": "2024-01-01", "target_energy_kwh": 3200000, "target_volume_m3": 81847, "timestamp": "1111-11-11T11:11:11Z", "total_energy_consumption_kwh": 3363200, "total_volume_m3": 85656, "volume_flow_m3h": 13.16}
|
||||
// |Kamstrup_MC603_mbus;32323232;3363200;85656;OK;1111-11-11 11:11.11
|
||||
|
||||
// Test: KMHEAT kamheat 85412440 NOKEY
|
||||
// telegram=|5e442d2c4024418535047ae10050252f2f04fB091300000004167500000004ff2200000000043ca301000002599c1d025dB00e844014000000008480401400000000042eB9000000026c0534426c013444fB0900000000543c000000002f2f|
|
||||
// {"id": "85412440","media": "heat","meter": "kamheat","meter_date": "2024-04-05","name": "KMHEAT","power_kw": 185,"status": "OK","t1_temperature_c": 75.8,"t2_temperature_c": 37.6,"target_date": "2024-04-01","target_energy_kwh": 0,"timestamp": "1111-11-11T11:11:11Z","total_energy_consumption_kwh": 5277.777778,"total_volume_m3": 117,"volume_flow_m3h": 4.19}
|
||||
// |KMHEAT;85412440;5277.777778;117;OK;1111-11-11 11:11.11
|
||||
|
|
|
@ -68,7 +68,7 @@ namespace
|
|||
"How many times the door/window has been opened or closed.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -79,7 +79,7 @@ namespace
|
|||
"The current number of counted pulses from counter b.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
|
|
@ -60,7 +60,7 @@ namespace
|
|||
"The current number of counted pulses from counter a.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("0EFD3A"))
|
||||
);
|
||||
|
@ -70,7 +70,7 @@ namespace
|
|||
"The current number of counted pulses from counter b.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("8E40FD3A"))
|
||||
);
|
||||
|
|
|
@ -56,7 +56,7 @@ namespace
|
|||
"Number of total routed messages since power up",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -67,7 +67,7 @@ namespace
|
|||
"Used router slots (maximum 936)",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -103,7 +103,7 @@ namespace
|
|||
"Seconds to mode change (Listen -> Sleep or Sleep -> Listen). Maximum 32767 seconds",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -115,7 +115,7 @@ namespace
|
|||
"Value on parameter 'Listen timer'",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -127,7 +127,7 @@ namespace
|
|||
"Value on parameter 'Pause timer'",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -159,7 +159,7 @@ namespace
|
|||
"Value on parameter 'Start time', shown as minusted after midnight (-1=Not used)",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -180,7 +180,7 @@ namespace
|
|||
"Battery voltage.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace
|
|||
"Unique asynchronous message number.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AccessNumber)
|
||||
|
@ -80,7 +80,7 @@ namespace
|
|||
"Minutes since last manual test.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
|
|
@ -55,7 +55,7 @@ namespace
|
|||
"The current temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -66,7 +66,7 @@ namespace
|
|||
"The current humidity.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -77,7 +77,7 @@ namespace
|
|||
"The average temperature over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -89,7 +89,7 @@ namespace
|
|||
"The average humidity over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -101,7 +101,7 @@ namespace
|
|||
"The average temperature over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -113,7 +113,7 @@ namespace
|
|||
"The average humidity over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
|
|
@ -44,7 +44,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -55,7 +55,7 @@ namespace
|
|||
"The water consumption at the due date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -77,7 +77,7 @@ namespace
|
|||
"The water consumption at the what date?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -66,7 +66,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -87,7 +87,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -108,7 +108,7 @@ namespace
|
|||
"Duration since last measurement.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DurationSinceReadout)
|
||||
|
|
|
@ -66,7 +66,7 @@ namespace
|
|||
"The total heat energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -77,7 +77,7 @@ namespace
|
|||
"The total heating media volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -88,7 +88,7 @@ namespace
|
|||
"The current heat media volume flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -99,7 +99,7 @@ namespace
|
|||
"The current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::PowerW)
|
||||
|
@ -110,7 +110,7 @@ namespace
|
|||
"The difference between flow and return media temperatures.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::TemperatureDifference)
|
||||
|
@ -121,7 +121,7 @@ namespace
|
|||
"The most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES | PrintProperty::HIDE,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -134,7 +134,7 @@ namespace
|
|||
"The total water consumption at the historic date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
|
|
@ -51,7 +51,7 @@ namespace
|
|||
"The total water consumption recorded at the beginning of this month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -74,7 +74,7 @@ namespace
|
|||
"The total water consumption recorded at the beginning of this month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -212,8 +212,8 @@ namespace
|
|||
|
||||
// Test: Minowired minomess 57575757 NOKEY
|
||||
// telegram=|6874746808007257575757496A000712000000_0C7857575757046D2414DE280413000000000C943C000000004413FFFFFFFF426CFFFF840113FFFFFFFF82016CFFFFC40113FFFFFFFFC2016CFFFF840213FFFFFFFF82026CFFFF043B000000000422E62F000004260000000034220000000002FD1700001F5716|
|
||||
// {"media":"water","meter":"minomess","name":"Minowired","id":"57575757","fabrication_no":"57575757","operating_time_h":0,"on_time_h":12262,"on_time_at_error_h":0,"meter_datetime":"2022-08-30 20:36","total_m3":0,"total_backward_m3":0,"volume_flow_m3h":0,"target_m3":4294967.295,"target_date":"2127-15-31","status":"OK","timestamp":"1111-11-11T11:11:11Z"}
|
||||
// |Minowired;57575757;0;4294967.295;OK;1111-11-11 11:11.11
|
||||
// {"media":"water","meter":"minomess","name":"Minowired","id":"57575757","fabrication_no":"57575757","operating_time_h":0,"on_time_h":12262,"on_time_at_error_h":0,"meter_datetime":"2022-08-30 20:36","total_m3":0,"total_backward_m3":0,"volume_flow_m3h":0,"target_m3":-0.001,"target_date":"2127-15-31","status":"OK","timestamp":"1111-11-11T11:11:11Z"}
|
||||
// |Minowired;57575757;0;-0.001;OK;1111-11-11 11:11.11
|
||||
|
||||
// Test: Zenner_cold minomess 21314151 NOKEY
|
||||
// telegram=|6644496A4425155518377251413121496A0116360050052F2F_0C1355000000026CEC2182046CE1218C0413000000808D0493132C33FE00008000008000008000008000008000008000008000008000008000008000008000008000008000008002FD1700002F2F|
|
||||
|
|
|
@ -46,7 +46,7 @@ namespace
|
|||
"The total water consumption recorded at the end of previous year.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -58,7 +58,7 @@ namespace
|
|||
"Date when previous year ended.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
|
|
@ -60,7 +60,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -71,7 +71,7 @@ namespace
|
|||
"The total water consumption recorded at the beginning of this month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -83,7 +83,7 @@ namespace
|
|||
"The water temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
"The external temperature outside of the meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Any)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -108,7 +108,7 @@ namespace
|
|||
"The lowest external temperature outside of the meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -119,7 +119,7 @@ namespace
|
|||
"The maximum flow recorded during previous period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
|
|
@ -62,7 +62,7 @@ namespace
|
|||
"The current temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -73,7 +73,7 @@ namespace
|
|||
"The current relative humidity.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
|
|
@ -47,7 +47,7 @@ namespace
|
|||
"Et+ the total 3-phase active positive energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -61,7 +61,7 @@ namespace
|
|||
"P+ the 3-phase active positive power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -75,7 +75,7 @@ namespace
|
|||
"Er+ the total 3-phase reactive positive energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -89,7 +89,7 @@ namespace
|
|||
"Q+ the 3-phase reactive positive power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -103,7 +103,7 @@ namespace
|
|||
"Part Et+ the total 3-phase active partial energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -117,7 +117,7 @@ namespace
|
|||
"P- the 3-phase active negative power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -131,7 +131,7 @@ namespace
|
|||
"Part Er+ the total 3-phase reactive partial energy.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"Q- the 3-phase reactive negative power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -159,7 +159,7 @@ namespace
|
|||
"PF the power factor.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless),
|
||||
|
@ -186,7 +186,7 @@ namespace
|
|||
"I1 Amperage for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -198,7 +198,7 @@ namespace
|
|||
"I2 Amperage for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -210,7 +210,7 @@ namespace
|
|||
"I3 Amperage for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -222,7 +222,7 @@ namespace
|
|||
"L1-N Voltage for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -234,7 +234,7 @@ namespace
|
|||
"L2-N Voltagefor L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -246,7 +246,7 @@ namespace
|
|||
"L3-N Voltage for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -260,7 +260,7 @@ namespace
|
|||
"P1 Power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -273,7 +273,7 @@ namespace
|
|||
"P2 Power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -286,7 +286,7 @@ namespace
|
|||
"P3 Power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -299,7 +299,7 @@ namespace
|
|||
"Q1 Power for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -312,7 +312,7 @@ namespace
|
|||
"Q2 Power for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -325,7 +325,7 @@ namespace
|
|||
"Q3 Power for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -338,7 +338,7 @@ namespace
|
|||
"PF1 the power factor for L1 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -351,7 +351,7 @@ namespace
|
|||
"PF2 the power factor for L2 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -364,7 +364,7 @@ namespace
|
|||
"PF3 the power factor for L3 phase.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Dimensionless)
|
||||
|
@ -377,7 +377,7 @@ namespace
|
|||
"L1-L2 Voltage between phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -389,7 +389,7 @@ namespace
|
|||
"L2-L3 Voltage between phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -401,7 +401,7 @@ namespace
|
|||
"L3-L1 Voltage between phases.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -413,7 +413,7 @@ namespace
|
|||
"I Neutral amperage.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Amperage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Amperage)
|
||||
|
@ -426,7 +426,7 @@ namespace
|
|||
"Frequency in 0.1 Hz",
|
||||
DEFAULT_PRINT_PROPERTIES | PrintProperty::HIDE,
|
||||
Quantity::Frequency,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("05FF5A"))
|
||||
);
|
||||
|
|
|
@ -64,7 +64,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -75,7 +75,7 @@ namespace
|
|||
"The total energy backward (production) recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -87,7 +87,7 @@ namespace
|
|||
"The current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -98,7 +98,7 @@ namespace
|
|||
"The current power production.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
|
|
@ -48,7 +48,7 @@ namespace
|
|||
"The current temperature.",
|
||||
PrintProperty::REQUIRED,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -59,7 +59,7 @@ namespace
|
|||
"The average temperature over the last hour.",
|
||||
PrintProperty::REQUIRED,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -71,7 +71,7 @@ namespace
|
|||
"The average temperature over the last 24 hours.",
|
||||
PrintProperty::REQUIRED,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -83,7 +83,7 @@ namespace
|
|||
"The current relative humidity.",
|
||||
PrintProperty::REQUIRED,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -94,7 +94,7 @@ namespace
|
|||
"The average relative humidity over the last hour.",
|
||||
PrintProperty::REQUIRED,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -106,7 +106,7 @@ namespace
|
|||
"The average relative humidity over the last 24 hours.",
|
||||
PrintProperty::REQUIRED,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
|
|
@ -48,7 +48,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -59,7 +59,7 @@ namespace
|
|||
"The total amount of water that has passed through this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -70,7 +70,7 @@ namespace
|
|||
"The active power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -81,7 +81,7 @@ namespace
|
|||
"The flow of water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -92,7 +92,7 @@ namespace
|
|||
"The forward temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -103,7 +103,7 @@ namespace
|
|||
"The return temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -124,7 +124,7 @@ namespace
|
|||
"The energy consumption recorded by this meter at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -136,7 +136,7 @@ namespace
|
|||
"The amount of water that had passed through this meter at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -148,7 +148,7 @@ namespace
|
|||
"The maximum forward temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -160,7 +160,7 @@ namespace
|
|||
"The maximum return temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -172,7 +172,7 @@ namespace
|
|||
"The maximum forward flow of water through this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
|
|
@ -59,7 +59,7 @@ namespace
|
|||
"The total water consumption at the end of the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -71,7 +71,7 @@ namespace
|
|||
"The total media volume flowing forward at the end of previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -84,7 +84,7 @@ namespace
|
|||
"The total media volume flowing backward at the end of the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -97,7 +97,7 @@ namespace
|
|||
"Percentage of battery remaining.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("01FD74")),
|
||||
Unit::PERCENTAGE
|
||||
|
@ -118,5 +118,5 @@ namespace
|
|||
|
||||
// Test: M q400 05829163 NOKEY
|
||||
// telegram=|544409076391820510077ABF100000046D2A0DC62C0420E80F430104130000000004933B0000000004933C00000000023B00000259F0D8446D0000C12C44130000000044933B0000000044933C0000000001FD7461|
|
||||
// {"backward_at_set_date_m3": 0,"battery_pct": 97,"consumption_at_set_date_m3": 0,"flow_temperature_c": 555.36,"forward_at_set_date_m3": 0,"id": "05829163","media": "water","meter": "q400","meter_datetime": "2022-12-06 13:42","name": "M","on_time_h": 5881.166667,"set_datetime": "2022-12-01 00:00","status": "TEMPORARY_ERROR","timestamp": "1111-11-11T11:11:11Z","total_backward_m3": 0,"total_forward_m3": 0,"total_m3": 0,"volume_flow_m3h": 0}
|
||||
// {"backward_at_set_date_m3": 0,"battery_pct": 97,"consumption_at_set_date_m3": 0,"flow_temperature_c": -100,"forward_at_set_date_m3": 0,"id": "05829163","media": "water","meter": "q400","meter_datetime": "2022-12-06 13:42","name": "M","on_time_h": 5881.166667,"set_datetime": "2022-12-01 00:00","status": "TEMPORARY_ERROR","timestamp": "1111-11-11T11:11:11Z","total_backward_m3": 0,"total_forward_m3": 0,"total_m3": 0,"volume_flow_m3h": 0}
|
||||
// |M;05829163;0;1111-11-11 11:11.11
|
||||
|
|
|
@ -74,7 +74,7 @@ namespace
|
|||
"The current heat cost allocation.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -117,7 +117,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -139,7 +139,7 @@ namespace
|
|||
"Heat cost allocation at the 8 billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -161,7 +161,7 @@ namespace
|
|||
"Heat cost allocation at the 17 billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -200,7 +200,7 @@ namespace
|
|||
"Forward media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
|
|
@ -85,7 +85,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -106,7 +106,7 @@ namespace
|
|||
"The total energy consumption recorded at the last day of the previous month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(17))
|
||||
|
@ -128,7 +128,7 @@ namespace
|
|||
"The total energy consumption recorded at the last day of the previous year.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(StorageNr(1))
|
||||
|
|
|
@ -63,7 +63,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -89,7 +89,7 @@ namespace
|
|||
"The total energy consumption recorded at key (billing) date",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -121,7 +121,7 @@ namespace
|
|||
info,
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -136,7 +136,7 @@ namespace
|
|||
"The time between the measurement and the sending of this telegram.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ActualityDuration)
|
||||
|
@ -147,7 +147,7 @@ namespace
|
|||
"How long the meter has been in an error state and unable to measure values, while powered up.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::AtError)
|
||||
.set(VIFRange::OnTime)
|
||||
|
|
|
@ -73,7 +73,7 @@ namespace
|
|||
"Number of times the smoke alarm has triggered.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Unsigned,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("81037C034C4123"))
|
||||
);
|
||||
|
@ -102,7 +102,7 @@ namespace
|
|||
"Number of times the test button has been pressed.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("81027C03495523"))
|
||||
);
|
||||
|
@ -112,7 +112,7 @@ namespace
|
|||
"Transmission counter?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
VifScaling::None, DifSignedness::Unsigned,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AccessNumber)
|
||||
|
@ -132,7 +132,7 @@ namespace
|
|||
"What does this mean?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("02FDAC7E"))
|
||||
);
|
||||
|
|
|
@ -69,7 +69,7 @@ namespace
|
|||
"The total heating energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -81,7 +81,7 @@ namespace
|
|||
"The total cooling energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -93,7 +93,7 @@ namespace
|
|||
"The current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -114,7 +114,7 @@ namespace
|
|||
"The heating energy consumption recorded at the end of the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -127,7 +127,7 @@ namespace
|
|||
"The cooling energy consumption recorded at the end of the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
|
|
@ -65,7 +65,7 @@ namespace
|
|||
"The water consumption at the due date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -77,7 +77,7 @@ namespace
|
|||
"The due date for billing date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -90,7 +90,7 @@ namespace
|
|||
"The water consumption at the 17 due date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -102,7 +102,7 @@ namespace
|
|||
"The due date for billing date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -115,7 +115,7 @@ namespace
|
|||
"Media volume flow when duration exceeds lower last.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -127,7 +127,7 @@ namespace
|
|||
"The date the error occurred at. If no error, reads 2127-15-31 (FFFF).",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::AtError)
|
||||
.set(VIFRange::Date),
|
||||
|
|
|
@ -47,7 +47,7 @@ namespace
|
|||
"The current temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -58,7 +58,7 @@ namespace
|
|||
"The average temperature over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -70,7 +70,7 @@ namespace
|
|||
"The average temperature over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -82,7 +82,7 @@ namespace
|
|||
"The maximum temperature over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -93,7 +93,7 @@ namespace
|
|||
"The maximum temperature over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -105,7 +105,7 @@ namespace
|
|||
"The minimum temperature over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -116,7 +116,7 @@ namespace
|
|||
"The minimum temperature over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -128,7 +128,7 @@ namespace
|
|||
"The current relative humidity.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -139,7 +139,7 @@ namespace
|
|||
"The average relative humidity over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -151,7 +151,7 @@ namespace
|
|||
"The average relative humidity over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -163,7 +163,7 @@ namespace
|
|||
"The maximum relative humidity over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -174,7 +174,7 @@ namespace
|
|||
"The maximum relative humidity over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -186,7 +186,7 @@ namespace
|
|||
"The minimum relative humidity over the last hour.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -197,7 +197,7 @@ namespace
|
|||
"The minimum relative humidity over the last 24 hours.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::RelativeHumidity,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Minimum)
|
||||
.set(VIFRange::RelativeHumidity)
|
||||
|
@ -209,7 +209,7 @@ namespace
|
|||
"The meters date time.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
|
|
@ -43,7 +43,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -51,7 +51,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -62,7 +62,7 @@ namespace
|
|||
"The active power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -73,7 +73,7 @@ namespace
|
|||
"The maximum power consumption over ?period?.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -84,7 +84,7 @@ namespace
|
|||
"The flow of water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
"The maximum forward flow of water over a ?period?.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -106,7 +106,7 @@ namespace
|
|||
"The forward temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -117,7 +117,7 @@ namespace
|
|||
"The return temperature of the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -128,7 +128,7 @@ namespace
|
|||
"The temperature difference forward-return for the water.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::TemperatureDifference)
|
||||
|
@ -139,7 +139,7 @@ namespace
|
|||
"The total amount of water that has passed through this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -188,7 +188,7 @@ namespace
|
|||
"The energy consumption at the last billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -205,7 +205,7 @@ namespace
|
|||
info,
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -220,8 +220,14 @@ namespace
|
|||
// {"media":"heat","meter":"sensostar","name":"Heat","id":"20480057","meter_timestamp":"2022-04-28 13:44","total_kwh":0,"power_kw":0,"power_max_kw":0,"flow_water_m3h":0,"flow_water_max_m3h":0,"forward_c":20,"return_c":21,"difference_c":-0.38,"total_water_m3":0,"current_status":"ERROR_FLOW_MEASUREMENT_SYSTEM_ERROR","reporting_date":"2000-00-00","energy_consumption_at_reporting_date_kwh":0,"consumption_1_months_ago_kwh":0,"timestamp":"1111-11-11T11:11:11Z"}
|
||||
// |Heat;20480057;0;0;ERROR_FLOW_MEASUREMENT_SYSTEM_ERROR;2000-00-00;0;1111-11-11 11:11.11
|
||||
|
||||
// Test: WMZ sensostar 02752560 NOKEY
|
||||
// Comment: from "Sensostar U"
|
||||
//Test: WMZ sensostar 02752560 NOKEY
|
||||
//Comment: from "Sensostar U"
|
||||
//telegram=a444c5146025750200047ac20000202f2f046d2e26c62a040643160000041310f0050001fd1700426cbf2c4406570e00008401061f160000840206f6150000840306f5150000840406f3150000840506ea150000840606bf1500008407065214000084080692120000840906c5100000840a06570e0000840b06ca0b0000840c06da090000840d06ca080000840e06c8080000840f06c608000003fd0c05010002fd0b2111
|
||||
//{"media":"heat","meter":"sensostar","name":"WMZ","id":"02752560","meter_timestamp":"2022-10-06 06:46","total_kwh":5699,"total_water_m3":389.136,"current_status":"OK","reporting_date":"2021-12-31","energy_consumption_at_reporting_date_kwh":3671,"consumption_1_months_ago_kwh":5663,"consumption_2_months_ago_kwh":5622,"consumption_3_months_ago_kwh":5621,"consumption_4_months_ago_kwh":5619,"consumption_5_months_ago_kwh":5610,"consumption_6_months_ago_kwh":5567,"consumption_7_months_ago_kwh":5202,"consumption_8_months_ago_kwh":4754,"consumption_9_months_ago_kwh":4293,"consumption_10_months_ago_kwh":3671,"consumption_11_months_ago_kwh":3018,"consumption_12_months_ago_kwh":2522,"consumption_13_months_ago_kwh":2250,"consumption_14_months_ago_kwh":2248,"consumption_15_months_ago_kwh":2246,"timestamp":"1111-11-11 11:11.11"}
|
||||
//WMZ;02752560;5699;389.136000;OK;1111-11-11 11:11.11
|
||||
|
||||
// Test: ABC sensostar 21750444 NOKEY
|
||||
// Comment: Test negative flow values
|
||||
// telegram=4944C5144404752100047AC1000020_2F2F046D142D073404068847000001FD170004138E8A4000043BF7FFFFFF042B00000000025B3E00025F360002612F0303FD0C05010002FD0B2011
|
||||
// {"current_status": "OK","difference_c": 8.15,"flow_water_m3h": -0.009,"forward_c": 62,"id": "21750444","media": "heat","meter": "sensostar","meter_timestamp": "2024-04-07 13:20","name": "ABC","power_kw": 0,"return_c": 54,"timestamp": "1111-11-11T11:11:11Z","total_kwh": 18312,"total_water_m3": 4229.774}
|
||||
// |ABC;21750444;18312;4229.774;OK;null;null;1111-11-11 11:11.11
|
||||
|
|
|
@ -61,7 +61,7 @@ namespace
|
|||
"The total heat energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -72,7 +72,7 @@ namespace
|
|||
"The total heat energy consumption recorded by this meter on tariff 1.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -84,7 +84,7 @@ namespace
|
|||
"The total heating media volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -95,7 +95,7 @@ namespace
|
|||
"The total heating media volume recorded by this meter on tariff 2.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -107,7 +107,7 @@ namespace
|
|||
"The current heat media volume flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -118,7 +118,7 @@ namespace
|
|||
"The current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::PowerW)
|
||||
|
@ -129,7 +129,7 @@ namespace
|
|||
"The current forward heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -140,7 +140,7 @@ namespace
|
|||
"The current return heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -151,7 +151,7 @@ namespace
|
|||
"The current return heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::TemperatureDifference)
|
||||
|
@ -162,7 +162,7 @@ namespace
|
|||
"The total heat energy consumption recorded by this meter at the end of the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -174,7 +174,7 @@ namespace
|
|||
"The total heating media volume recorded by this meter at the end of the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -186,7 +186,7 @@ namespace
|
|||
"The last billing period end date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
|
|
@ -48,7 +48,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -59,7 +59,7 @@ namespace
|
|||
"The total cooling energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -71,7 +71,7 @@ namespace
|
|||
"The total volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyVolumeVIF)
|
||||
|
@ -82,7 +82,7 @@ namespace
|
|||
"The total cooling volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyVolumeVIF)
|
||||
|
@ -94,7 +94,7 @@ namespace
|
|||
"The current flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -105,7 +105,7 @@ namespace
|
|||
"The power.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyPowerVIF)
|
||||
|
@ -116,7 +116,7 @@ namespace
|
|||
"The flow temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -127,7 +127,7 @@ namespace
|
|||
"The return temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -138,7 +138,7 @@ namespace
|
|||
"How long the meter has been collecting data.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::OperatingTime)
|
||||
|
@ -149,7 +149,7 @@ namespace
|
|||
"How long the meter has been in an error state and not collected data.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::OperatingTime)
|
||||
|
@ -161,7 +161,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -173,7 +173,7 @@ namespace
|
|||
"The total cooling energy consumption recorded by this meter at the set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -186,7 +186,7 @@ namespace
|
|||
"The last billing set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
|
|
@ -43,7 +43,7 @@ namespace
|
|||
"The current heat cost allocation for this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -64,7 +64,7 @@ namespace
|
|||
"Heat cost allocation at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -76,7 +76,7 @@ namespace
|
|||
"The current temperature of the heating element.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -87,7 +87,7 @@ namespace
|
|||
"The current room temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -98,7 +98,7 @@ namespace
|
|||
"The maximum temperature so far during this billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -110,7 +110,7 @@ namespace
|
|||
"The maximum temperature during the previous billing period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Maximum)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
|
|
@ -67,7 +67,7 @@ namespace
|
|||
"Current water temperature recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature));
|
||||
|
@ -77,7 +77,7 @@ namespace
|
|||
"The current water flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow));
|
||||
|
@ -87,7 +87,7 @@ namespace
|
|||
"Volume up to end of last year-period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -99,7 +99,7 @@ namespace
|
|||
"Reverse volume in this year-period (?)",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -123,7 +123,7 @@ namespace
|
|||
"Volume up to end of last month-period.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -145,7 +145,7 @@ namespace
|
|||
"Remaining battery life in years.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::RemainingBattery),
|
||||
|
|
|
@ -42,7 +42,7 @@ namespace
|
|||
"The total heat energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -53,7 +53,7 @@ namespace
|
|||
"The total heating media volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -64,7 +64,7 @@ namespace
|
|||
"The current power consumption.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Power,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::PowerW)
|
||||
|
@ -75,7 +75,7 @@ namespace
|
|||
"The current heat media volume flow.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -86,7 +86,7 @@ namespace
|
|||
"The current forward heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -97,7 +97,7 @@ namespace
|
|||
"The current return heat media temperature.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
|
|
@ -40,7 +40,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -51,7 +51,7 @@ namespace
|
|||
"The total water consumption recorded at the beginning of this month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -92,7 +92,7 @@ namespace
|
|||
"The total backward water volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(DifVifKey("04933C"))
|
||||
);
|
||||
|
|
|
@ -92,7 +92,7 @@ namespace
|
|||
"The total gas consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -114,7 +114,7 @@ namespace
|
|||
"The total gas consumption recorded by this meter at the beginning of this month.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -44,7 +44,7 @@ namespace
|
|||
"Total energy consumption at the end of the year",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -56,7 +56,7 @@ namespace
|
|||
"Date when previous year ended.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
|
|
@ -42,7 +42,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -53,7 +53,7 @@ namespace
|
|||
"The total energy consumption recorded when?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -65,7 +65,7 @@ namespace
|
|||
"The last billing old date?",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -77,7 +77,7 @@ namespace
|
|||
"The total energy consumption recorded by this meter at the due date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Energy,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyEnergyVIF)
|
||||
|
@ -89,7 +89,7 @@ namespace
|
|||
"The last billing set date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
|
|
@ -75,7 +75,7 @@ namespace
|
|||
"Device date time.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::DateTime)
|
||||
|
@ -86,7 +86,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -97,7 +97,7 @@ namespace
|
|||
"The total backward water volume recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AnyVolumeVIF)
|
||||
|
@ -155,7 +155,7 @@ namespace
|
|||
"The battery voltage.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Voltage,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Voltage)
|
||||
|
@ -166,7 +166,7 @@ namespace
|
|||
"The most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -179,7 +179,7 @@ namespace
|
|||
"The total water consumption at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -191,7 +191,7 @@ namespace
|
|||
"The total water consumption at the historic date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -62,7 +62,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -43,7 +43,7 @@ namespace
|
|||
"The total water consumption recorded by this meter.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -54,7 +54,7 @@ namespace
|
|||
"The most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -67,7 +67,7 @@ namespace
|
|||
"The total water consumption at the most recent billing period date.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
VifScaling::Auto, DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright (C) 2018-2022 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
Copyright (C) 2018-2024 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -135,7 +135,8 @@ bool isInsideVIFRange(Vif vif, VIFRange vif_range)
|
|||
return
|
||||
isInsideVIFRange(vif, VIFRange::EnergyWh) ||
|
||||
isInsideVIFRange(vif, VIFRange::EnergyMJ) ||
|
||||
isInsideVIFRange(vif, VIFRange::EnergyMWh);
|
||||
isInsideVIFRange(vif, VIFRange::EnergyMWh) ||
|
||||
isInsideVIFRange(vif, VIFRange::EnergyGJ);
|
||||
}
|
||||
if (vif_range == VIFRange::AnyPowerVIF)
|
||||
{
|
||||
|
@ -762,7 +763,7 @@ bool extractDVdouble(map<string,pair<int,DVEntry>> *dv_entries,
|
|||
int *offset,
|
||||
double *value,
|
||||
bool auto_scale,
|
||||
bool assume_signed)
|
||||
bool force_unsigned)
|
||||
{
|
||||
if ((*dv_entries).count(key) == 0) {
|
||||
verbose("(dvparser) warning: cannot extract double from non-existant key \"%s\"\n", key.c_str());
|
||||
|
@ -780,7 +781,7 @@ bool extractDVdouble(map<string,pair<int,DVEntry>> *dv_entries,
|
|||
return false;
|
||||
}
|
||||
|
||||
return p.second.extractDouble(value, auto_scale, assume_signed);
|
||||
return p.second.extractDouble(value, auto_scale, force_unsigned);
|
||||
}
|
||||
|
||||
bool checkSizeHex(size_t expected_len, DifVifKey &dvk, string &v)
|
||||
|
@ -801,7 +802,7 @@ bool is_all_F(string &v)
|
|||
return true;
|
||||
}
|
||||
|
||||
bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
||||
bool DVEntry::extractDouble(double *out, bool auto_scale, bool force_unsigned)
|
||||
{
|
||||
int t = dif_vif_key.dif() & 0xf;
|
||||
if (t == 0x0 ||
|
||||
|
@ -830,17 +831,17 @@ bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
|||
if (!checkSizeHex(2, dif_vif_key, value)) return false;
|
||||
assert(v.size() == 1);
|
||||
raw = v[0];
|
||||
if (assume_signed && (raw & (uint64_t)0x80UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<8; }
|
||||
if (!force_unsigned && (raw & (uint64_t)0x80UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<8; }
|
||||
} else if (t == 0x2) {
|
||||
if (!checkSizeHex(4, dif_vif_key, value)) return false;
|
||||
assert(v.size() == 2);
|
||||
raw = v[1]*256 + v[0];
|
||||
if (assume_signed && (raw & (uint64_t)0x8000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<16; }
|
||||
if (!force_unsigned && (raw & (uint64_t)0x8000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<16; }
|
||||
} else if (t == 0x3) {
|
||||
if (!checkSizeHex(6, dif_vif_key, value)) return false;
|
||||
assert(v.size() == 3);
|
||||
raw = v[2]*256*256 + v[1]*256 + v[0];
|
||||
if (assume_signed && (raw & (uint64_t)0x800000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<24; }
|
||||
if (!force_unsigned && (raw & (uint64_t)0x800000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<24; }
|
||||
} else if (t == 0x4) {
|
||||
if (!checkSizeHex(8, dif_vif_key, value)) return false;
|
||||
assert(v.size() == 4);
|
||||
|
@ -848,7 +849,7 @@ bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
|||
+ ((unsigned int)v[2])*256*256
|
||||
+ ((unsigned int)v[1])*256
|
||||
+ ((unsigned int)v[0]);
|
||||
if (assume_signed && (raw & (uint64_t)0x80000000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<32; }
|
||||
if (!force_unsigned && (raw & (uint64_t)0x80000000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<32; }
|
||||
} else if (t == 0x6) {
|
||||
if (!checkSizeHex(12, dif_vif_key, value)) return false;
|
||||
assert(v.size() == 6);
|
||||
|
@ -858,7 +859,7 @@ bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
|||
+ ((uint64_t)v[2])*256*256
|
||||
+ ((uint64_t)v[1])*256
|
||||
+ ((uint64_t)v[0]);
|
||||
if (assume_signed && (raw & (uint64_t)0x800000000000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<48; }
|
||||
if (!force_unsigned && (raw & (uint64_t)0x800000000000UL) != 0) { negate = true; negate_mask = ~((uint64_t)0)<<48; }
|
||||
} else if (t == 0x7) {
|
||||
if (!checkSizeHex(16, dif_vif_key, value)) return false;
|
||||
assert(v.size() == 8);
|
||||
|
@ -870,7 +871,7 @@ bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
|||
+ ((uint64_t)v[2])*256*256
|
||||
+ ((uint64_t)v[1])*256
|
||||
+ ((uint64_t)v[0]);
|
||||
if (assume_signed && (raw & (uint64_t)0x8000000000000000UL) != 0) { negate = true; negate_mask = 0; }
|
||||
if (!force_unsigned && (raw & (uint64_t)0x8000000000000000UL) != 0) { negate = true; negate_mask = 0; }
|
||||
}
|
||||
double scale = 1.0;
|
||||
double draw = (double)raw;
|
||||
|
@ -888,8 +889,8 @@ bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
|||
t == 0xC || // 8 digit BCD
|
||||
t == 0xE) // 12 digit BCD
|
||||
{
|
||||
// Signed BCD values are always visible in bcd! Top nybble is f. We can force assume_signed to true.
|
||||
assume_signed = true;
|
||||
// Negative BCD values are always visible in bcd. I.e. they are always signed.
|
||||
// Ignore assumption on signedness.
|
||||
// 74140000 -> 00001474
|
||||
string& v = value;
|
||||
uint64_t raw = 0;
|
||||
|
@ -902,29 +903,29 @@ bool DVEntry::extractDouble(double *out, bool auto_scale, bool assume_signed)
|
|||
}
|
||||
if (t == 0x9) {
|
||||
if (!checkSizeHex(2, dif_vif_key, v)) return false;
|
||||
if (assume_signed && v[0] == 'F') { negate = true; v[0] = '0'; }
|
||||
if (v[0] == 'F') { negate = true; v[0] = '0'; }
|
||||
raw = (v[0]-'0')*10 + (v[1]-'0');
|
||||
} else if (t == 0xA) {
|
||||
if (!checkSizeHex(4, dif_vif_key, v)) return false;
|
||||
if (assume_signed && v[2] == 'F') { negate = true; v[2] = '0'; }
|
||||
if (v[2] == 'F') { negate = true; v[2] = '0'; }
|
||||
raw = (v[2]-'0')*10*10*10 + (v[3]-'0')*10*10
|
||||
+ (v[0]-'0')*10 + (v[1]-'0');
|
||||
} else if (t == 0xB) {
|
||||
if (!checkSizeHex(6, dif_vif_key, v)) return false;
|
||||
if (assume_signed && v[4] == 'F') { negate = true; v[4] = '0'; }
|
||||
if (v[4] == 'F') { negate = true; v[4] = '0'; }
|
||||
raw = (v[4]-'0')*10*10*10*10*10 + (v[5]-'0')*10*10*10*10
|
||||
+ (v[2]-'0')*10*10*10 + (v[3]-'0')*10*10
|
||||
+ (v[0]-'0')*10 + (v[1]-'0');
|
||||
} else if (t == 0xC) {
|
||||
if (!checkSizeHex(8, dif_vif_key, v)) return false;
|
||||
if (assume_signed && v[6] == 'F') { negate = true; v[6] = '0'; }
|
||||
if (v[6] == 'F') { negate = true; v[6] = '0'; }
|
||||
raw = (v[6]-'0')*10*10*10*10*10*10*10 + (v[7]-'0')*10*10*10*10*10*10
|
||||
+ (v[4]-'0')*10*10*10*10*10 + (v[5]-'0')*10*10*10*10
|
||||
+ (v[2]-'0')*10*10*10 + (v[3]-'0')*10*10
|
||||
+ (v[0]-'0')*10 + (v[1]-'0');
|
||||
} else if (t == 0xE) {
|
||||
if (!checkSizeHex(12, dif_vif_key, v)) return false;
|
||||
if (assume_signed && v[10] == 'F') { negate = true; v[10] = '0'; }
|
||||
if (v[10] == 'F') { negate = true; v[10] = '0'; }
|
||||
raw =(v[10]-'0')*10*10*10*10*10*10*10*10*10*10*10 + (v[11]-'0')*10*10*10*10*10*10*10*10*10*10
|
||||
+ (v[8]-'0')*10*10*10*10*10*10*10*10*10 + (v[9]-'0')*10*10*10*10*10*10*10*10
|
||||
+ (v[6]-'0')*10*10*10*10*10*10*10 + (v[7]-'0')*10*10*10*10*10*10
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
Copyright (C) 2018-2022 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
Copyright (C) 2018-2024 Fredrik Öhrström (gpl-3.0-or-later)
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
|
@ -48,6 +48,7 @@
|
|||
X(FabricationNo,0x78,0x78, Quantity::Text, Unit::TXT) \
|
||||
X(EnhancedIdentification,0x79,0x79, Quantity::Text, Unit::TXT) \
|
||||
X(EnergyMWh,0x7B00,0x7B01, Quantity::Energy, Unit::KWH) \
|
||||
X(EnergyGJ,0x7B09,0x7B0A, Quantity::Energy, Unit::MJ) \
|
||||
X(RelativeHumidity,0x7B1A,0x7B1B, Quantity::RH, Unit::RH) \
|
||||
X(AccessNumber,0x7D08,0x7D08, Quantity::Counter, Unit::COUNTER) \
|
||||
X(Medium,0x7D09,0x7D09, Quantity::Text, Unit::TXT) \
|
||||
|
@ -381,7 +382,7 @@ struct DVEntry
|
|||
{
|
||||
}
|
||||
|
||||
bool extractDouble(double *out, bool auto_scale, bool assume_signed);
|
||||
bool extractDouble(double *out, bool auto_scale, bool force_unsigned);
|
||||
bool extractLong(uint64_t *out);
|
||||
bool extractDate(struct tm *out);
|
||||
bool extractReadableString(std::string *out);
|
||||
|
@ -561,7 +562,7 @@ bool extractDVdouble(std::map<std::string,std::pair<int,DVEntry>> *values,
|
|||
int *offset,
|
||||
double *value,
|
||||
bool auto_scale = true,
|
||||
bool assume_signed = false);
|
||||
bool force_unsigned = false);
|
||||
|
||||
// Extract a value without scaling. Works for 8bits to 64 bits, binary and bcd.
|
||||
bool extractDVlong(std::map<std::string,std::pair<int,DVEntry>> *values,
|
||||
|
|
|
@ -461,6 +461,7 @@ void MeterCommonImplementation::addNumericFieldWithExtractor(string vname,
|
|||
PrintProperties print_properties,
|
||||
Quantity vquantity,
|
||||
VifScaling vif_scaling,
|
||||
DifSignedness dif_signedness,
|
||||
FieldMatcher matcher,
|
||||
Unit display_unit,
|
||||
double scale)
|
||||
|
@ -471,6 +472,7 @@ void MeterCommonImplementation::addNumericFieldWithExtractor(string vname,
|
|||
vquantity,
|
||||
display_unit == Unit::Unknown ? defaultUnitForQuantity(vquantity) : display_unit,
|
||||
vif_scaling,
|
||||
dif_signedness,
|
||||
scale,
|
||||
matcher,
|
||||
help,
|
||||
|
@ -510,6 +512,7 @@ void MeterCommonImplementation::addNumericFieldWithCalculator(string vname,
|
|||
vquantity,
|
||||
display_unit == Unit::Unknown ? defaultUnitForQuantity(vquantity) : display_unit,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
1.0,
|
||||
FieldMatcher::noMatcher(),
|
||||
help,
|
||||
|
@ -550,6 +553,7 @@ void MeterCommonImplementation::addNumericFieldWithCalculatorAndMatcher(string v
|
|||
vquantity,
|
||||
display_unit == Unit::Unknown ? defaultUnitForQuantity(vquantity) : display_unit,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
1.0,
|
||||
matcher,
|
||||
help,
|
||||
|
@ -577,6 +581,7 @@ void MeterCommonImplementation::addNumericField(
|
|||
vquantity,
|
||||
display_unit == Unit::Unknown ? defaultUnitForQuantity(vquantity) : display_unit,
|
||||
VifScaling::None,
|
||||
DifSignedness::Signed,
|
||||
1.0,
|
||||
FieldMatcher::noMatcher(),
|
||||
help,
|
||||
|
@ -601,6 +606,7 @@ void MeterCommonImplementation::addStringFieldWithExtractor(string vname,
|
|||
Quantity::Text,
|
||||
defaultUnitForQuantity(Quantity::Text),
|
||||
VifScaling::None,
|
||||
DifSignedness::Signed,
|
||||
1.0,
|
||||
matcher,
|
||||
help,
|
||||
|
@ -626,6 +632,7 @@ void MeterCommonImplementation::addStringFieldWithExtractorAndLookup(string vnam
|
|||
Quantity::Text,
|
||||
defaultUnitForQuantity(Quantity::Text),
|
||||
VifScaling::None,
|
||||
DifSignedness::Signed,
|
||||
1.0,
|
||||
matcher,
|
||||
help,
|
||||
|
@ -649,6 +656,7 @@ void MeterCommonImplementation::addStringField(string vname,
|
|||
Quantity::Text,
|
||||
defaultUnitForQuantity(Quantity::Text),
|
||||
VifScaling::None,
|
||||
DifSignedness::Signed,
|
||||
1.0,
|
||||
FieldMatcher(),
|
||||
help,
|
||||
|
@ -1670,6 +1678,7 @@ FieldInfo::FieldInfo(int index,
|
|||
Quantity xuantity,
|
||||
Unit display_unit,
|
||||
VifScaling vif_scaling,
|
||||
DifSignedness dif_signedness,
|
||||
double scale,
|
||||
FieldMatcher matcher,
|
||||
string help,
|
||||
|
@ -1686,6 +1695,7 @@ FieldInfo::FieldInfo(int index,
|
|||
xuantity_(xuantity),
|
||||
display_unit_(display_unit),
|
||||
vif_scaling_(vif_scaling),
|
||||
dif_signedness_(dif_signedness),
|
||||
scale_(scale),
|
||||
matcher_(matcher),
|
||||
help_(help),
|
||||
|
@ -2336,11 +2346,11 @@ bool FieldInfo::extractNumeric(Meter *m, Telegram *t, DVEntry *dve)
|
|||
}
|
||||
|
||||
double extracted_double_value = NAN;
|
||||
if (dve->extractDouble(&extracted_double_value,
|
||||
vifScaling() == VifScaling::Auto ||
|
||||
vifScaling() == VifScaling::AutoSigned,
|
||||
vifScaling() == VifScaling::NoneSigned ||
|
||||
vifScaling() == VifScaling::AutoSigned))
|
||||
|
||||
bool auto_vif_scaling = vifScaling() == VifScaling::Auto;
|
||||
bool force_unsigned = difSignedness() == DifSignedness::Unsigned;
|
||||
|
||||
if (dve->extractDouble(&extracted_double_value, auto_vif_scaling, force_unsigned))
|
||||
{
|
||||
Unit decoded_unit = displayUnit();
|
||||
if (matcher_.vif_range == VIFRange::DateTime)
|
||||
|
@ -2607,6 +2617,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ActualityDuration),
|
||||
|
@ -2622,6 +2633,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ActualityDuration)
|
||||
|
@ -2744,6 +2756,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::OperatingTime)
|
||||
|
@ -2758,6 +2771,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::OnTime)
|
||||
|
@ -2772,6 +2786,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Time,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::AtError)
|
||||
.set(VIFRange::OnTime)
|
||||
|
@ -2834,6 +2849,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -2848,6 +2864,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -2863,6 +2880,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::PointInTime,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Date)
|
||||
|
@ -2879,6 +2897,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -2894,6 +2913,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Volume,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::Volume)
|
||||
|
@ -2909,6 +2929,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::FlowTemperature)
|
||||
|
@ -2923,6 +2944,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ExternalTemperature)
|
||||
|
@ -2937,6 +2959,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::ReturnTemperature)
|
||||
|
@ -2950,7 +2973,8 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
"The difference between flow and return media temperatures.",
|
||||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Temperature,
|
||||
VifScaling::AutoSigned,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::TemperatureDifference)
|
||||
|
@ -2965,6 +2989,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Flow,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::VolumeFlow)
|
||||
|
@ -2979,6 +3004,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::Dimensionless,
|
||||
VifScaling::None,
|
||||
DifSignedness::Unsigned,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::AccessNumber)
|
||||
|
@ -2993,6 +3019,7 @@ bool MeterCommonImplementation::addOptionalLibraryFields(string field_names)
|
|||
DEFAULT_PRINT_PROPERTIES,
|
||||
Quantity::HCA,
|
||||
VifScaling::Auto,
|
||||
DifSignedness::Signed,
|
||||
FieldMatcher::build()
|
||||
.set(MeasurementType::Instantaneous)
|
||||
.set(VIFRange::HeatCostAllocation)
|
||||
|
@ -3010,10 +3037,8 @@ const char *toString(VifScaling s)
|
|||
{
|
||||
switch (s)
|
||||
{
|
||||
case VifScaling::None: return "None";
|
||||
case VifScaling::Auto: return "Auto";
|
||||
case VifScaling::NoneSigned: return "NoneSigned";
|
||||
case VifScaling::AutoSigned: return "AutoSigned";
|
||||
case VifScaling::None: return "None";
|
||||
case VifScaling::Unknown: return "Unknown";
|
||||
}
|
||||
return "?";
|
||||
|
@ -3022,14 +3047,32 @@ const char *toString(VifScaling s)
|
|||
VifScaling toVifScaling(const char *s)
|
||||
{
|
||||
if (!s) return VifScaling::Unknown;
|
||||
if (!strcmp(s, "None")) return VifScaling::None;
|
||||
if (!strcmp(s, "Auto")) return VifScaling::Auto;
|
||||
if (!strcmp(s, "NoneSigned")) return VifScaling::NoneSigned;
|
||||
if (!strcmp(s, "AutoSigned")) return VifScaling::AutoSigned;
|
||||
if (!strcmp(s, "None")) return VifScaling::None;
|
||||
if (!strcmp(s, "Unknown")) return VifScaling::Unknown;
|
||||
return VifScaling::Unknown;
|
||||
}
|
||||
|
||||
const char *toString(DifSignedness s)
|
||||
{
|
||||
switch (s)
|
||||
{
|
||||
case DifSignedness::Signed: return "Signed";
|
||||
case DifSignedness::Unsigned: return "Unsigned";
|
||||
case DifSignedness::Unknown: return "Unknown";
|
||||
}
|
||||
return "?";
|
||||
}
|
||||
|
||||
DifSignedness toDifSignedness(const char *s)
|
||||
{
|
||||
if (!s) return DifSignedness::Unknown;
|
||||
if (!strcmp(s, "Signed")) return DifSignedness::Signed;
|
||||
if (!strcmp(s, "Unsigned")) return DifSignedness::Unsigned;
|
||||
if (!strcmp(s, "Unknown")) return DifSignedness::Unknown;
|
||||
return DifSignedness::Unknown;
|
||||
}
|
||||
|
||||
const char* toString(PrintProperty p)
|
||||
{
|
||||
switch(p)
|
||||
|
|
17
src/meters.h
17
src/meters.h
|
@ -229,16 +229,24 @@ vector<DriverInfo*>& allDrivers();
|
|||
|
||||
enum class VifScaling
|
||||
{
|
||||
None, // No auto scaling.
|
||||
Auto, // Scale to normalized VIF unit (ie kwh, m3, m3h etc)
|
||||
NoneSigned, // No auto scaling however assume the value is signed.
|
||||
AutoSigned, // Scale and assume the value is signed.
|
||||
None, // No auto scaling.
|
||||
Unknown
|
||||
};
|
||||
|
||||
const char* toString(VifScaling s);
|
||||
VifScaling toVifScaling(const char *s);
|
||||
|
||||
enum class DifSignedness
|
||||
{
|
||||
Signed, // By default the binary values are interpreted as signed.
|
||||
Unsigned, // We can override for non-compliant meters.
|
||||
Unknown
|
||||
};
|
||||
|
||||
const char* toString(DifSignedness s);
|
||||
DifSignedness toDifSignedness(const char *s);
|
||||
|
||||
enum PrintProperty
|
||||
{
|
||||
REQUIRED = 1, // If no data has arrived, then print this field anyway with NaN or null.
|
||||
|
@ -283,6 +291,7 @@ struct FieldInfo
|
|||
Quantity quantity,
|
||||
Unit display_unit,
|
||||
VifScaling vif_scaling,
|
||||
DifSignedness dif_signedness,
|
||||
double scale,
|
||||
FieldMatcher matcher,
|
||||
string help,
|
||||
|
@ -300,6 +309,7 @@ struct FieldInfo
|
|||
Quantity xuantity() { return xuantity_; }
|
||||
Unit displayUnit() { return display_unit_; }
|
||||
VifScaling vifScaling() { return vif_scaling_; }
|
||||
DifSignedness difSignedness() { return dif_signedness_; }
|
||||
double scale() { return scale_; }
|
||||
FieldMatcher& matcher() { return matcher_; }
|
||||
string help() { return help_; }
|
||||
|
@ -337,6 +347,7 @@ private:
|
|||
Quantity xuantity_; // Quantity: Energy, Volume
|
||||
Unit display_unit_; // Selected display unit for above quantity: KWH, M3
|
||||
VifScaling vif_scaling_;
|
||||
DifSignedness dif_signedness_;
|
||||
double scale_; // A hardcoded scale factor. Used only for manufacturer specific values with unknown units for the vifs.
|
||||
FieldMatcher matcher_;
|
||||
string help_; // Helpful information on this meters use of this value.
|
||||
|
|
|
@ -111,6 +111,7 @@ protected:
|
|||
PrintProperties print_properties, // Should this be printed by default in fields,json and hr.
|
||||
Quantity vquantity, // Value belongs to this quantity, this quantity determines the default unit.
|
||||
VifScaling vif_scaling, // How should any Vif value be scaled.
|
||||
DifSignedness dif_signedness, // Should we override the default signed assumption for binary values?
|
||||
FieldMatcher matcher,
|
||||
Unit display_unit = Unit::Unknown, // If specified use this unit for the json field instead instead of the default unit.
|
||||
double scale = 1.0); // A hard coded extra scale factor. Useful for manufacturer specific values.
|
||||
|
|
|
@ -2818,6 +2818,12 @@ double vifScale(int vif)
|
|||
case 0x7b00:
|
||||
case 0x7b01: { double exp = (vif & 0x1)+2; return pow(10.0, -exp); }
|
||||
|
||||
// Active energy 0.1 or 1 GJ normalize to 100 MJ or 1000 MJ
|
||||
// 7b09 19 -> 1.9 G -> 1 900 KWh
|
||||
// 7b0A 19 -> 19 GJ -> 19 000 MJ
|
||||
case 0x7b09:
|
||||
case 0x7b0A: { double exp = (vif & 0x1)+2; return pow(10.0, -exp); }
|
||||
|
||||
// relative humidity is a dimensionless value.
|
||||
case 0x7b1a: return 10.0; // Relative humidity 0.1 %
|
||||
case 0x7b1b: return 1.0; // Relative humidity 1 %
|
||||
|
|
2
test.sh
2
test.sh
|
@ -11,7 +11,7 @@ fi
|
|||
|
||||
if ! command -v jq > /dev/null
|
||||
then
|
||||
echo "You have to install jq !"
|
||||
echo "You have to install jq! Try: sudo apt install jq"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue