Module: Wireless

Defined in:
lib/arbi/modules/net.rb

Class Method Summary collapse

Class Method Details

.essid(ifname) ⇒ Object



29
30
31
32
33
34
35
36
37
# File 'lib/arbi/modules/net.rb', line 29

def self.essid (ifname)
  iwreq = [ifname, " " * 32, 32, 0].pack("a16pII")
  sock = ::Socket.new(:INET, :DGRAM, 0)
  sock.ioctl(0x8B1B, iwreq)
  return iwreq.unpack("a16pII")[1].strip
rescue Exception => e
  Arbi.debug(e.backtrace[0] + ': ' + e.to_s + "\n" + e.backtrace[1..-1].join("\n"))
  nil
end

.quality(ifname) ⇒ Object



23
24
25
26
27
# File 'lib/arbi/modules/net.rb', line 23

def self.quality(ifname)
  File.read('/proc/net/wireless').match(/^\s*#{Regexp.escape(ifname)}:.*$/)[0].strip.split(/:?\s+/)[2].gsub('.', '') + "%"
rescue
  nil
end