Receive SMS messages in a web application in the US on a hosted server

南楼画角 提交于 2020-01-20 03:18:32

问题


I'm trying to build a simple web application that will allow people to send SMS messages FROM their mobile phone TO my application.

I've seen this question asked before:

Receive SMS messages by web application
Receiving a SMS message in a .NET application

... but I have a few unique (I think) circumstances.

  1. I'm expecting a very small number of messages (<1,000/month)
  2. My users are all in the U.S.
  3. I don't need to SEND SMS messages - I just want to allow users to be able to send messages TO the application

I'm aware of major SMS "providers" like Clickatell. However, their services seem like HUGE overkill.

Ideally, I'd like users to be able to send an SMS message to an EMAIL account I have set up. However, based on a (superficial) investigation, it looks like that's not possible. (E.g., I tried it on my iPhone, and the message isn't received).

So, I guess the next best alternative is that my users send SMS messages to a dedicated phone number, and have those messages forwarded to an email account on my server. That would work, I guess. But I'm not sure how to do the forwarding part, or if it's even possible.

Clickatell offers a service like that, but they charge a few hundred bucks to set up a number, a few hundred bucks to RENT the number each month, and a few pennies for each message. And, they only offer non-US phone numbers. (In the US, you apparently need to have a "short-code", that's INCREDIBLY expensive). Seems like there should be a MUCH simpler approach.

I've read that people buy cheap phones and connect them to their server, but I don't have my own server (I'm using a cheap hosted server at MediaTemple).


回答1:


You might look into http://www.twilio.com/sms/ it's very reasonable pricing and the implementation is really very easy. You should be able to get something setup in a fairly short amount of time.




回答2:


This is bad form... answering my own question, but I've just stumbled upon a possible simple (and FREE!) option.

You can sign up for Google Voice, using an email address of your own choosing. This gives you a phone number for users to send messages to. Then, through the settings, you can have any text messages sent to that number forwarded to the email address you've chosen. With a little PHP, you can read the phone number of the user who sent the text message, and the body of their message.

So far, this seems to work just fine. Not sure if it complies with GVoice's terms of service, but since my app is small and free, hopefully no one will notice.

I don't know how much volume you can run through this method, or if I'll run into other limitations.

Still interested in hearing about other and better solutions.




回答3:


I can see how you might have some problems physically connecting that cheap phone to your hosted server. But why would you need a physical connection nowadays? A slightly more expensive phone could receive the SMS, wrap it in a HTTP body and POST it to your webserver. You might even do some rudimentary filtering (e.g. whitelist/blacklist). All data traffic would be over the air, which - at the volumes mentioned - would still be affordable.




回答4:


Here's another option:

Get your hands on a cheap Android device with GSM connectivity and install one of the many SMS Gateway apps in the Google Market.

For example, SMS Gateway says to support these features:

This application turns your android phone into powerful SMS gateway.

Features:

  1. Periodically checks for e-mails via POP3 and send them via SMS.
  2. Send SMS by HTTP GET request on its internal webserver.
  3. Forward received SMS to desired e-mail via SMTP.
  4. Forward received SMS by calling remote webserver via HTTP GET.

So you can forward incoming SMS to an email address or a web application (or web service or web API) and also you can SEND SMS via a HTTP GET request to its very own internal webserver.

Pretty neat, I'd say. And I'm sure there are others with similar or better features, still.

I am not affiliated to SMS Gateway (or any other sms gateway app on the Google Market).

EDIT: Forgot to mention... It's free!




回答5:


Take a look at OptIt. They work well for small-time SMS operations. They do dedicated shortcodes (expensive) as well shared shortcodes (for $20/month/keyword and $0.02/message). Their website is quite useful and has a lot of functionality (subscriptions, autoresponses, subkeywords). In addition, they offer an API so that you can have custom behavior.



来源:https://stackoverflow.com/questions/3621687/receive-sms-messages-in-a-web-application-in-the-us-on-a-hosted-server

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!