class PVOutput::Statistic

Constants

API_URL

Attributes

actual_date_from[R]
actual_date_to[R]
average_consumption[R]
average_efficiency[R]
average_generation[R]
credit_amount[R]
debit_amount[R]
energy_consumed[R]
energy_exported[R]
energy_generated[R]
high_shoulder_energy_import[R]
maximum_consumption[R]
maximum_generation[R]
minimum_consumption[R]
minimum_generation[R]
off_peak_energy_import[R]
outputs[R]
peak_energy_import[R]
record_date[R]
record_efficiency[R]
shoulder_energy_import[R]

Public Class Methods

fetch(date_from, date_to, auth_details) click to toggle source
# File lib/pvoutput-api/statistic.rb, line 56
def self.fetch (date_from, date_to, auth_details)

  # hit api and return csv data in array
  data = RestClient.get(API_URL, {:params => {:sid => auth_details.system_id, :key => auth_details.api_key, :df => date_from, :dt => date_to, :c => '1', :crdr => '1'}})
  results = CSV.new(data).to_a

  # array to hash
  statistics = { energy_generated: results[0][0],
                 energy_exported: results[0][1],
                 average_generation: results[0][2],
                 minimum_generation: results[0][3],
                 maximum_generation: results[0][4],
                 average_efficiency: results[0][5],
                 outputs: results[0][6],
                 actual_date_from: results[0][7],
                 actual_date_to: results[0][8],
                 record_efficiency: results[0][9],
                 record_date: results[0][10],
                 energy_consumed: results[0][11],
                 peak_energy_import: results[0][12],
                 off_peak_energy_import: results[0][13],
                 shoulder_energy_import: results[0][14],
                 high_shoulder_energy_import: results[0][15],
                 average_consumption: results[0][16],
                 minimum_consumption: results[0][17],
                 maximum_consumption: results[0][18],
                 credit_amount: results[0][19],
                 debit_amount: results[0][20]}
  new(statistics)
end
new(statistics) click to toggle source
# File lib/pvoutput-api/statistic.rb, line 32
def initialize(statistics)
  @energy_generated = statistics[:energy_generated]
  @energy_exported = statistics[:energy_exported]
  @average_generation = statistics[:average_generation]
  @minimum_generation = statistics[:minimum_generation]
  @maximum_generation = statistics[:maximum_generation]
  @average_efficiency = statistics[:average_efficiency]
  @outputs = statistics[:outputs]
  @actual_date_from = statistics[:actual_date_from]
  @actual_date_to = statistics[:actual_date_to]
  @record_efficiency = statistics[:record_efficiency]
  @record_date = statistics[:record_date]
  @energy_consumed = statistics[:energy_consumed]
  @peak_energy_import = statistics[:peak_energy_import]
  @off_peak_energy_import = statistics[:off_peak_energy_import]
  @shoulder_energy_import = statistics[:shoulder_energy_import]
  @high_shoulder_energy_import =statistics[:high_shoulder_energy_import]
  @average_consumption = statistics[:average_consumption]
  @minimum_consumption = statistics[:minimum_consumption]
  @maximum_consumption = statistics[:maximum_consumption]
  @credit_amount = statistics[:credit_amount]
  @debit_amount = statistics[:debit_amount]
end