class TuyaCloud::Device::Switchable

Attributes

online[RW]
state[RW]

Public Class Methods

new(json, auth_context) click to toggle source
Calls superclass method TuyaCloud::Device::Control::new
# File lib/tuya_cloud/device.rb, line 51
def initialize(json, auth_context)
  super(json, auth_context)
  self.online = json['data']['online'].to_s == 'true'
  self.state  = json['data']['state'].to_s == 'true'
end

Public Instance Methods

toggle() click to toggle source
# File lib/tuya_cloud/device.rb, line 57
def toggle
  process_request('turnOnOff', payload: { value: state ? 0 : 1 })
  self.state = !state
end
turn_off() click to toggle source
# File lib/tuya_cloud/device.rb, line 62
def turn_off
  process_request('turnOnOff', payload: { value: 0 })
  self.state = false
end
turn_on() click to toggle source
# File lib/tuya_cloud/device.rb, line 67
def turn_on
  process_request('turnOnOff', payload: { value: 1 })
  self.state = true
end