Top Level Namespace

Defined Under Namespace

Modules: RfidUsbGomSensor, X Classes: Usage

Instance Method Summary collapse

Instance Method Details

#main(argv) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'bin/rfid-usb-gom-sensor', line 15

def main argv
  options = Hash.from_argv argv
  args = (options.delete :args)
  #options[:callback_port] ||= 32119

  sensor_url = args.shift
  sensor_url or (raise Usage, "no <sensor_url>")
  puts " -- starting RFID sensor: #{Time.now}"

  daemon = Gom::Remote::Daemon.new(sensor_url, options) do |daemon, _| 
    daemon.check_in 
  end
  sensor = RfidUsbGomSensor::Node.new daemon.service_path, options
  sensor.preroll
  daemon.background_loop(1.1) { sensor.push_active_tags_to_gom }
  daemon.forever { sensor.detect }

rescue Usage => e
  puts <<-TXT

usage: #{__FILE__} <GOM Sensor URL>

 ## #{e}
  TXT
rescue => e
  puts " ## #{e}\n -> #{e.backtrace.join "\n    "}"
end