class Netatmo::Weather::BaseStation
Attributes
cipher_id[RW]
co2[RW]
co2_calibrating[RW]
date_setup[RW]
friend_users[RW]
humidity[RW]
last_status_store[RW]
last_upgrade[RW]
modules[RW]
noise[RW]
place[RW]
pressure[RW]
read_only[RW]
station_name[RW]
temperature[RW]
wifi_status[RW]
Public Class Methods
new(data)
click to toggle source
DeviceType: NAMain
Calls superclass method
# File lib/netatmo/weather/base_station.rb, line 10 def initialize(data) super(data) self.cipher_id = data['cipher_id'] self.date_setup = Time.at(data['date_setup']) if data['date_setup'] self.last_status_store = Time.at(data['last_status_store']) if data['last_status_store'] self.last_upgrade = Time.at(data['last_upgrade']) if data['last_upgrade'] self.co2_calibrating = data['co2_calibrating'] self.station_name = data['station_name'] self.friend_users = data['friend_users'] self.read_only = data['read_only'] self.modules = [] data['modules']&.each do |module_data| modules << Device.parse(module_data) end if data['dashboard_data'] self.co2 = DashboardData::CO2.new(data['dashboard_data']) self.humidity = DashboardData::Humidity.new(data['dashboard_data']) self.temperature = DashboardData::Temperature.new(data['dashboard_data']) self.noise = DashboardData::Noise.new(data['dashboard_data']) self.pressure = DashboardData::Pressure.new(data['dashboard_data']) if pressure? end self.wifi_status = WifiStatus.new(data['wifi_status']) self.place = Netatmo::Place.new(data['place']) end
Public Instance Methods
first_indoor_module()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 63 def first_indoor_module indoor_modules&.first end
health_coach()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 55 def health_coach modules.find(&:health_coach?) end
indoor_modules()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 59 def indoor_modules modules.select(&:indoor_module?) end
name()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 39 def name station_name end
outdoor_module()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 43 def outdoor_module modules.find(&:outdoor_module?) end
rain_gauge()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 47 def rain_gauge modules.find(&:rain_gauge?) end
wind_gauge()
click to toggle source
# File lib/netatmo/weather/base_station.rb, line 51 def wind_gauge modules.find(&:wind_gauge?) end