tags:

views:

862

answers:

8

I have a client that wants the application to be able to send SMS text message alerts to people that have subscribed to the service. I have seen this done on a lot of sites but I am not aware of what is involved in setting this up. Does anybody have any experience doing this? What is involved?

Thanks, Brent

+4  A: 

Every phone has an email address for SMS which you can send to, but that supposedly isn't reliable. Your other option is an SMS gateway web service API (there are plenty) or a service like textmarks.

John Sheehan
Not every phone has an email address...
Patrik
Certainly not in the UK, although why on earth not (excepting yet another way to scrape more cash out of users). SMS Gateway is the only reasonable solution.
Kev
+1  A: 

They usually send an SMS through an SMS gateway (a company that's involved with sending the actual message on the phone network) which provides them with a SOAP endpoint. It's as easy as a Web service call but the actual code will depend on the company you're working with.

Mehrdad Afshari
+1  A: 

First step is to get an SMS provider -- depending on your scale/budget, depends on whether you'll install a kilostream link direct to mobile network(s) of choice / use a USB mobile data card / use a service from a third party.

Each of those is sufficiently different, and most will come with a documented API for hooking up to

Rowland Shaw
+1  A: 

http://www.developershome.com/sms/

Hertanto Lie
A: 

There are many services that provide SMS gateways. Which countries are you targeting? In the US is seems to be possible to send the messages for free (since the receiver pays), in most other countries the sender will have to pay.

PanMan
A: 

You can also try connecting directly to the mobile carrier's SMSC (Short Message Service Central) as an external entity. They give you a phone number, username and password, which you use to connect with the SMPP protocol (version 3.3 or 3.4). You must of course talk to the carrier for this, it's not easy but it's the best way because it's the native protocol that their gateway uses. There is a SMPP java library at SourceForge.

Other providers offer a web service to send messages but you cannot receive messages; with SMPP it's bidirectional in case you need to receive SMS from customers.

Chochos
+2  A: 

Something similar discussed here may help:

http://stackoverflow.com/questions/4269/programmatic-sms

Kev
A: 

The most robust method is to use an SMS gateway provider like Clickatell. If you want free and ad-based, then use TextMarks (although they do have a fee-based solution). TextMarks also has the added benefit of being able to accept incoming text messages.

You can submit to either of those places via HTTP, so that you don't have to deal with the details yourself. Rolling your own and dealing directly with the carriers is ... ummmmmm ... somewhere between burning yourself and cutting off an arm.

nshaw