class Hue

Public Class Methods

bridge_state() click to toggle source
# File lib/ha/hue.rb, line 22
def self.bridge_state
  unless defined? @bridge_state
    conn = Faraday.new(url: "http://#{BRIDGE_IP}")
    get = conn.get("/api/#{USERNAME}/")
    @bridge_state = JSON.parse(get.body)
  end
  @bridge_state
end
new(context, bridge_state) click to toggle source
# File lib/ha/hue.rb, line 14
def initialize(context, bridge_state)
  @context = context
  @bridge_state = bridge_state
  @groups =  groups
  @sensors =  sensors
  @lights =  lights
end

Public Instance Methods

all_a(selector) click to toggle source
# File lib/ha/hue.rb, line 56
def all_a  selector
  items =  sensors_a selector
  items +=  lights_a selector
  items +=  groups_a selector
  items += rules_a selector
end
groups() click to toggle source
# File lib/ha/hue.rb, line 46
def groups
  parsed = @bridge_state["groups"]
  parsed.to_a.map { |group_pair| Group.new(*group_pair)}
end
groups_a(selector) click to toggle source
# File lib/ha/hue.rb, line 71
def groups_a selector
  groups.map { |group| group.array(selector)}
end
lights() click to toggle source
# File lib/ha/hue.rb, line 41
def lights
  parsed = @bridge_state["lights"]
  parsed.to_a.map { |light_pair| Light.new(*light_pair, @groups)}
end
lights_a(selector) click to toggle source
# File lib/ha/hue.rb, line 67
def lights_a selector
  lights.map { |light| light.array(selector)}
end
pair() click to toggle source
# File lib/ha/hue.rb, line 31
def pair
  @context[:useraccount] = "12345"
  @context.save
end
rules() click to toggle source
# File lib/ha/hue.rb, line 51
def rules
  parsed = @bridge_state["rules"]
  parsed.to_a.map { |rule_pair| Rule.new(*rule_pair)}
end
rules_a(selector) click to toggle source
# File lib/ha/hue.rb, line 75
def rules_a selector
  rules.map { |rule| rule.array(selector)}
end
sensors() click to toggle source
# File lib/ha/hue.rb, line 36
def sensors
  parsed = @bridge_state["sensors"]
  parsed.to_a.map { |sensor_pair| Sensor.new(*sensor_pair)}
end
sensors_a(selector) click to toggle source
# File lib/ha/hue.rb, line 63
def sensors_a selector
  sensors.map { |sensor| sensor.array(selector)}
end