module Volumerb::MacVolume
Public Class Methods
down(value = 3)
click to toggle source
# File lib/volumerb/mac_volume.rb, line 9 def self.down(value = 3) osa 'set currentVolume to output volume of (get volume settings) set volume output volume (currentVolume - #{value})' vol end
mute()
click to toggle source
# File lib/volumerb/mac_volume.rb, line 15 def self.mute state = osa 'output muted of (get volume settings)' setmute = !eval(state) osa "set volume output muted #{setmute}" vol end
up(value = 3)
click to toggle source
# File lib/volumerb/mac_volume.rb, line 3 def self.up(value = 3) osa 'set currentVolume to output volume of (get volume settings) set volume output volume (currentVolume + #{value})' vol end
value=(value)
click to toggle source
# File lib/volumerb/mac_volume.rb, line 22 def self.value=(value) osa 'set volume output volume (#{value})' vol end
vol()
click to toggle source
# File lib/volumerb/mac_volume.rb, line 27 def self.vol # Mac OS X output: # output volume:100, input volume:missing value, alert # volume:98, output muted:false vol = osa 'get volume settings' number = vol.match(/output\ volume\:([0-9]+)/)[1] state = vol.match(/muted:([t|f])/)[1] { number: number.to_s, state: state.to_s } end
Private Class Methods
osa(script)
click to toggle source
# File lib/volumerb/mac_volume.rb, line 39 def self.osa(script) `osascript -e '#{script}'` end