A program to read a Phidget IR sensor and log pull-ups with Fitbit's API
at master 31 lines 624 B view raw
1class Beeper < Loggerish 2 attr_accessor :player 3 4 def self.args 5 [ 6 [ "--sound", "-s", GetoptLong::REQUIRED_ARGUMENT, 7 "play <sound> file" ], 8 ] 9 end 10 11 def after_initialize 12 if @enabled = !!@parent.config["sound"] 13 @parent.vputs "playing sound file " << @parent.config["sound"] 14 15 if `uname -s`.strip == "OpenBSD" 16 @player = [ "aucat", "-i" ] 17 else 18 # dunno, assume mac 19 @player = [ "afplay" ] 20 end 21 end 22 end 23 24 def log_pullup!(time) 25 cmd = @player + [ @parent.config["sound"] ] 26 27 @parent.dputs "running " << cmd.inspect 28 29 system(*cmd) 30 end 31end