module ParseP1::Gas
Public Instance Methods
gas_meter_id()
click to toggle source
# File lib/parse_p1/gas.rb, line 7 def gas_meter_id obis_records['0-1:96.1.0'].first end
gas_usage()
click to toggle source
# File lib/parse_p1/gas.rb, line 22 def gas_usage result = get_gas(-1) result.to_f if result end
last_hourly_reading_gas()
click to toggle source
Only 2 digits for year!
# File lib/parse_p1/gas.rb, line 12 def last_hourly_reading_gas result = get_gas(0) DateTime.new(('20'+result[0..1]).to_i, result[2..3].to_i, result[4..5].to_i, result[6..7].to_i, result[8..9].to_i) if result end
measurement_unit_gas()
click to toggle source
TODO remove this silly method?
# File lib/parse_p1/gas.rb, line 18 def measurement_unit_gas 'm3' end
Private Instance Methods
gas_obis_codes()
click to toggle source
# File lib/parse_p1/gas.rb, line 37 def gas_obis_codes ['0-1:24.3.0', '0-1:24.2.1', '0-2:24.1.0', '0-2:24.3.0', '0-2:24.2.1', '0-2:24.4.0'] end
get_gas(index_of_values)
click to toggle source
# File lib/parse_p1/gas.rb, line 29 def get_gas(index_of_values) gas_obis_codes.each do |obis_code| @result = obis_records[obis_code] break unless @result.nil? end @result[index_of_values] if @result end