Class: Walkon::Daemon

Inherits:
Object
  • Object
show all
Defined in:
lib/walkon/daemon.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDaemon

Returns a new instance of Daemon.



16
17
18
# File 'lib/walkon/daemon.rb', line 16

def initialize
  @devices = []
end

Instance Attribute Details

#devicesObject

Returns the value of attribute devices.



14
15
16
# File 'lib/walkon/daemon.rb', line 14

def devices
  @devices
end

Class Method Details

.startObject



20
21
22
# File 'lib/walkon/daemon.rb', line 20

def self.start
  new.run
end

Instance Method Details

#check_for_devicesObject



28
29
30
31
32
33
34
35
36
# File 'lib/walkon/daemon.rb', line 28

def check_for_devices
  scanned_devices.each do |mac_address|
    unless self.devices.include? mac_address
      device = Device.new mac_address
      play_entrance_music_for device
      self.devices << Device.new(mac_address)
    end
  end
end

#play_entrance_music_for(device) ⇒ Object



42
43
44
# File 'lib/walkon/daemon.rb', line 42

def play_entrance_music_for device
  device.entrance_music.play if device.has_entrance_music?
end

#runObject



24
25
26
# File 'lib/walkon/daemon.rb', line 24

def run
  loop { check_for_devices }
end

#scanned_devicesObject



38
39
40
# File 'lib/walkon/daemon.rb', line 38

def scanned_devices
  HciTool.scan
end