public
Description: Ruby interface to AT-compatible GSM modems
Homepage:
Clone URL: git://github.com/adammck/rubygsm.git
name age message
file .gitignore Thu Dec 18 14:43:33 -0800 2008 added gem to ignore [adammck]
file README.rdoc Wed Dec 31 12:15:13 -0800 2008 added band switching, and automatic device dete... [adammck]
directory bin/ Loading commit data...
directory lib/
file rubygsm.gemspec Thu Mar 05 09:45:28 -0800 2009 Merge branch 'master' of git://github.com/jeffr... [adammck]
directory spec/
README.rdoc

RubyGSM is a Ruby library which uses ruby-serialport to provide a nifty interface to send and receive SMS messages via a GSM modem.

Sample Usage

  class ReverseApp
      def initialize(gsm)
          gsm.receive(method(:incoming))
          @gsm = gsm
      end

      def incoming(from, datetime, message)
          @gsm.send(from, message.reverse)
      end
  end

  gsm = GsmModem.new
  ReverseApp.new(gsm)

Installing

RubyGSM is distributed via GitHub, which you must add as a gem source before installing:

  $ sudo gem sources -a http://gems.github.com

The library depends upon ruby-serialport, which is currently maintained on GitHub by Toholio. This library is included as a Gem dependancy, so to install both:

  $ sudo gem install adammck-rubygsm

For Debian/Ubuntu users…

The ruby-serialport library is available in the APT repository as a binary package, which is substatially less hassle to install than the Gem, for those who don’t have a compiler installed (I prefer not to, on production servers). To install the package via apt, and ignore the Gem dependancy:

  $ sudo apt-get install libserialport-ruby
  $ sudo gem install --ignore-dependencies adammck-rubygsm

Devices Tested

  • Multitech MTCBA
  • Wavecom M1306B