Mobile app version of vmapp.org
Login or Join
Welton855

: How to add SMS text messaging functionality to my website? I want to add the ability to send reminders to people via email and SMS for specific events that they have signed up for on a web

@Welton855

Posted in: #Notification #Sms #WebServices

I want to add the ability to send reminders to people via email and SMS for specific events that they have signed up for on a web application that I am building. The email part is not difficult, but I am wondering where to find a good solution for sending SMS messages.

It would also be a plus if this solution allowed two-way SMS communication with my web application so that people would be able to reply with a CONFIRM or CANCEL type of a message.

Has anyone implemented something like this? Does anyone know of good tools out there?

EDIT: I am realizing that this is more of a "lots of ways to skin this cat" type of question and so I changed it to community wiki.

10.11% popularity Vote Up Vote Down


Login to follow query

More posts by @Welton855

11 Comments

Sorted by latest first Latest Oldest Best

 

@Cugini213

If you want an affordable bulk SMS provider, with a developer API you could use SourceSMS.com - they offer international coverage, and they have scripts you can simply download and integrate into your website.

10% popularity Vote Up Vote Down


 

@Sent6035632

There are many producers and service providers. I know Ozeki SMS Gateway. The following URLs can help you if you want inhouse solution with own gsm modem or SMPP/UCP/CMD or else provider. When you make a decesion the first question: how many SMS do you want to send or receive?

HTTP SMS API with examples.

SMS API for ASP/ASP.NET Developers and Examples for PHP Developers on how to setup SMS functionality pages can give you usefull information.

10% popularity Vote Up Vote Down


 

@Phylliss660

Another option is to use PHP's mail function and a list of carrier's email servers, like so:

Make an HTML form on a PHP file,

<select name="carrier" style="width: 130px" >
<option selected="" value="1">Verizon Wireless</option>
<option value="2">Alltel</option>
<option value="3">Boost Mobile</option>
<option value="4">Cingular</option>
<option value="5">Nextel</option>
<option value="6">Sprint</option>
<option value="7">T-Mobile</option>
<option value="8">Virgin Mobile</option>
<option value="9">AT&T</option>
</select>


Then set where the mail will be sent:

if ($carrier == "1") {
$email = "$to@vtext.com";
} elseif ($carrier == "2") {
$email = "$to@message.alltel.com";
} elseif ($carrier == "3") {
$email = "$to@myboostmobile.com";
} elseif ($carrier == "4") {
$email = "$to@cingularme.com";
} elseif ($carrier == "5") {
$email = "$to@messaging.nextel.com";
} elseif ($carrier == "6") {
$email = "$to@messaging.sprintpcs.com";
} elseif ($carrier == "7") {
$email = "$to@tmomail.net";
} elseif ($carrier == "8") {
$email = "$to@vmobl.com";
} elseif ($carrier == "9") {
$email = "$to@txt.att.net";
}


Send the mail: ($email, $subject, $msg, $mailfrom will need to be defined and in proper format, recommend also sanitizing inputs)

if (mail($email, $subject, $msg, $mailfrom)) {
echo "<h4>Your Text Was Successfully Sent.</h4>";
echo "<br />";
if ($backurl == "") {
echo "<a href='javascript:history.back(1);'>Back</a>";
} else {
echo "<a href='" . $backurl . "'>Back</a>";
}
echo "</body></html>";
} else {
echo "<h4><b>Error Sending Message</b></h4><br>Can't send txt to $to. <br> Contact the site Administrator.";
}


Make sure PHP has valid mail settings in php.ini. If you have any questions, just ask.

10% popularity Vote Up Vote Down


 

@Lee4591628

I am not sure if you would be able to do anything with replies, there are some API's that have been made to implement text functionality with Google Voice.
code.google.com/p/pygooglevoice/ code.google.com/p/google-voice-java/

10% popularity Vote Up Vote Down


 

@Speyer207

I would recommend looking into the two way api provided by www.world-text.com/.

10% popularity Vote Up Vote Down


 

@Nickens628

Other two options I've considered in the past:

Skype API
Send and receive SMS using new Skype API.
I guess Twilio is cheaper, but Skype is available in more countries (if you want to receive SMSs)

Plug a phone to your server
If you live in a country (like Argentina) where SMS gateway companies charge a lot, you may find it cheaper to buy a phone and plug it to your server (depending on your hosting enviroment, of course). Then you can use a software like SMSToolkit to interact with the phone.

10% popularity Vote Up Vote Down


 

@Kaufman445

I've written such a two ways SMS system using Vidicom UK as the SMS provider (not sure if they are still going). Basically they have an HTTP based API where you can send and receive SMS messages. It's too complex to explain in detail, but in essence I had two database tables, one for incoming messages received from the gateway and another one for outgoing messages that are queued and then sent on to the gateway.

I basically then had to parse the incoming messages to see if they contained keywords such as CANCEL or STOP and then process the message accordingly. Unfortunately, you get a lot of garbage messages - you'd be surprised how many people send SMS messages to the wrong number - so you have to respond back saying "Message not understood" etc.

10% popularity Vote Up Vote Down


 

@Vandalay111

I've had to edit this answer a few times as the services I initially recommended have gone out of business. I believe that the new industry leader is Twilio, they have an excellent API and reasonable prices. Some alternatives worth considering are Tropo, Plivo, and Nexmo.

I've been using IMified for a little while to do stuff similar to that and I've found it to work well. It allows you to receive SMS (or Twitter and IM messages) as HTTP POSTs and your web server's response is sent as a reply. They also offer a web service that can be used to initiate conversation and send messages.

While I was looking for other options I came across Zeep Mobile
(Note: Zeep Mobile will no longer be in business as of 8/1/2013) which has an API for sending and receiving SMS. It is either free and ad supported or available for a montly fee. I have not tried it, but it looks quite interesting.

You can also use an SMS Gateway like ClickATell.

Best of luck!

EDIT: I found a question on StackOverflow that has lots more suggestions, some may be outdated.

10% popularity Vote Up Vote Down


 

@Samaraweera270

I've been using Twilio for voice and I've been quite impressed. I'm sure their SMS system isn't much different. This will allow you to send to any carrier without knowing the email address to send to (as I've noticed they change over time).

10% popularity Vote Up Vote Down


 

@BetL925

I had a friend who managed to implement this via email. I believe he did it exactly the same way this site recommends:


T-Mobile: phonenumber@tmomail.net
Virgin Mobile: phonenumber@vmobl.com
Cingular: phonenumber@cingularme.com
AT&T: phonenumber@txt.att.net
Sprint: phonenumber@messaging.sprintpcs.com
Verizon: phonenumber@vtext.com
Nextel: phonenumber@messaging.nextel.com

where phonenumber = your 10 digit phone number

10% popularity Vote Up Vote Down


 

@Pope3001725

This is for sending only, but I've used Penny SMS for a project and had good luck with it. If you happen to be using Ruby, check out the penny_sms_muncher gem.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme