Module: PurpleAirApi

Defined in:
lib/purple_air_api.rb,
lib/purple_air_api/version.rb,
lib/purple_air_api/V1/client.rb,
lib/purple_air_api/V1/errors.rb,
lib/purple_air_api/V1/sensors/errors.rb,
lib/purple_air_api/V1/sensors/get_sensor.rb,
lib/purple_air_api/V1/sensors/get_sensors.rb,
lib/purple_air_api/V1/raise_http_exception.rb

Overview

The PurpleAirApi is a gem intended to be used to interact with the PurpleAir API easily.

Defined Under Namespace

Modules: V1

Constant Summary collapse

VERSION =

The gem version

'0.1.1'

Class Method Summary collapse

Class Method Details

.client(read_token:, write_token: nil) ⇒ PurpleAirApi::V1::Client

Alias for PurpleAirApi::V1::Client.new

Examples:

requesting data for a few sensors

options = { fields: ['icon', 'name'], location_type: ['outside'], show_only: [26, 41], max_age: 3600}
PurpleAirApi.client(read_token: "1234", write_token: "1234").request_sensors(options)

Returns:



22
23
24
# File 'lib/purple_air_api.rb', line 22

def self.client(read_token:, write_token: nil)
  PurpleAirApi::V1::Client.new(read_token: read_token, write_token: write_token)
end

.method_missing(method, *args, &block) ⇒ Object

Delegate to PurpleAirApi::V1::Client



27
28
29
30
31
# File 'lib/purple_air_api.rb', line 27

def self.method_missing(method, *args, &block)
  return super unless client.respond_to?(method)

  client.send(method, *args, &block)
end

.respond_to?(method, include_all: false) ⇒ Boolean

Delegate to PurpleAirApi::V1::Client

Returns:

  • (Boolean)


34
35
36
# File 'lib/purple_air_api.rb', line 34

def self.respond_to?(method, include_all: false)
  client.respond_to?(method, include_all) || super
end

.respond_to_missing?(method_name, include_private: false) ⇒ Boolean

Delegate to PurpleAirApi::V1::Client

Returns:

  • (Boolean)


39
40
41
# File 'lib/purple_air_api.rb', line 39

def self.respond_to_missing?(method_name, include_private: false)
  client.respond_to_missing?(method_name, include_private) || super
end