Using SMS gateway to receive Text messages for a RoR app.

I am supposed to develop an application for a client that retrieves text messages from three different GSM Network providers. I am a newbie and looking for any knowledge concerning this area. Information concerning server technology, suggestions of any sort would be helpful. Materials or sample applications are also welcomed. Counting on your help.

Ricko.

There are two sources that I am familiar with: 1. Peepcode PDF doc: http://peepcode.com/products/mms2r-pdf 2. A book published by Packt Publishing: Ruby on Rails Web Mashup Projects [eBook] (9781847193940) They are both decent references. Hope this helps. Bharat

Yung-Rick,

One option is to register your own shortcode, but this is super pricey (prob around $1500 to $2000 per month plus setup costs). Another option (this is what I use) is to receive messages on a shared shortcode through an SMS gateway. The way this works is the SMS gateway owns shortcode 12345, for example. Any messages that arrive at that short code and start with my keyword are routed via an HTTP POST request to a URL I specify. For example, if my keyword is 'GAVIN', the text message 'GAVIN THIS IS A TEST MESSAGE' will be routed to my server. The URL I specified for routing is simply an action for a controller I created to receive the message, and the parameters passed by the SMS gateway are saved by this method. Here's an excerpt of the code I use. All the params are passed from the SMS gateway to the URL http://www.myurl.com/messenger/sms_in, so the HTTP request from the gateway looks something like http://www.myurl.com/messenger/sms_in?smsfrom=123456789&subject=Test+Message+Subject&gateway_id=29298348… etc.)

class MessengerController < ApplicationController    def sms_in         @incoming_message = IncomingMessage.new(:sender => params[:smsfrom],               :subject => params[:smsmsg],               :gateway_id => params[:smsid],               :date => params[:smsdate],               :carrier => params[:network],               :delivery_point => params[:smsto])    end end

As you can see, it's pretty simple. The gateway I use is Interlinked (www.interlinkedmedia.com). If you're interested in contacting them, you can email Cal Morton at cal [at] interlinked.mobi and tell him I referred you (don't worry, I don't get a referral bonus so that's not why I'm referring you to Interlinked, but Cal knows me). With SMS gateways there is a setup fee, a monthly service fee, and a per- message fee, but hopefully that's something your client is prepared to pay for.

It would be easier and cheaper if you only needed to send messages...you could use a bulk gateway like Clickatell...but it sounds like you need to actually receive them.

-Gavin