Class: ESPHome::Entities::BinarySensor
- Inherits:
-
ESPHome::Entity
- Object
- ESPHome::Entity
- ESPHome::Entities::BinarySensor
- Includes:
- HasDeviceClass, HasState
- Defined in:
- lib/esphome/entities/binary_sensor.rb
Constant Summary collapse
- DEVICE_CLASSES =
Hash.new({ true => "on", false => "off" }.freeze).merge( "battery" => { true => "low", false => "normal" }.freeze, "battery_charging" => { true => "charging", false => "not charging" }.freeze, "carbon_monoxide" => { true => "detected", false => "clear" }.freeze, "cold" => { true => "cold", false => "normal" }.freeze, "connectivity" => { true => "connected", false => "disconnected" }.freeze, "door" => { true => "open", false => "closed" }.freeze, "garage_door" => { true => "open", false => "closed" }.freeze, "gas" => { true => "detected", false => "clear" }.freeze, "heat" => { true => "hot", false => "normal" }.freeze, "light" => { true => "detected", false => "not detected" }.freeze, "lock" => { true => "locked", false => "unlocked" }.freeze, "moisture" => { true => "wet", false => "dry" }.freeze, "motion" => { true => "detected", false => "clear" }.freeze, "moving" => { true => "moving", false => "stopped" }.freeze, "occupancy" => { true => "occupied", false => "not occupied" }.freeze, "opening" => { true => "open", false => "closed" }.freeze, "plug" => { true => "plugged in", false => "unplugged" }.freeze, "power" => { true => "detected", false => "no power" }.freeze, "presence" => { true => "home", false => "away" }.freeze, "problem" => { true => "problem", false => "ok" }.freeze, "running" => { true => "running", false => "not running" }.freeze, "safety" => { true => "unsafe", false => "safe" }.freeze, "smoke" => { true => "detected", false => "clear" }.freeze, "sound" => { true => "detected", false => "not detected" }.freeze, "tamper" => { true => "tampered", false => "clear" }.freeze, "update" => { true => "available", false => "up-to-date" }.freeze, "vibration" => { true => "detected", false => "clear" }.freeze, "window" => { true => "open", false => "closed" }.freeze ).freeze
Instance Attribute Summary
Attributes inherited from ESPHome::Entity
#device, #disabled_by_default, #entity_category, #icon, #key, #name, #object_id_
Instance Method Summary collapse
- #formatted_state ⇒ Object
-
#initialize(_device, list_entities_response) ⇒ BinarySensor
constructor
A new instance of BinarySensor.
- #status? ⇒ Boolean
Methods inherited from ESPHome::Entity
Constructor Details
#initialize(_device, list_entities_response) ⇒ BinarySensor
Returns a new instance of BinarySensor.
40 41 42 43 |
# File 'lib/esphome/entities/binary_sensor.rb', line 40 def initialize(_device, list_entities_response) super @status = list_entities_response.is_status_binary_sensor end |
Instance Method Details
#formatted_state ⇒ Object
49 50 51 52 53 |
# File 'lib/esphome/entities/binary_sensor.rb', line 49 def formatted_state return super if state.nil? DEVICE_CLASSES[device_class][state] end |
#status? ⇒ Boolean
45 46 47 |
# File 'lib/esphome/entities/binary_sensor.rb', line 45 def status? @status end |