What can you use to get an application to be able

2020-05-15 05:32发布

问题:

  • Do you need to use some kind of provider?
  • Can you setup your own SMS server?
  • Does any open source solutions exist?

I am an SMS newbie so any insight on how this is accomplished would be great. I am partial to Java but any language is fine.

回答1:

This is easy. Yes, you need a "sms gateway" provider. There are a lot out there. These companies provide APIs for you to send/receive SMS.

e.g. the German company Mobilant provides an easy API. If you want to receive a SMS just program a simple PHP / JSP / s.th.else dynamic web page and let Mobilant call it.

e.g.

  • Mobilant receives a SMS for you
  • Mobilant calls your web page http://yourpage.com/receive.php?message=...
  • You do what you need to do

You really don't want to setup your own SMS Server or Center ;-) This is really expensive, takes months to setup and costs some nice ferraris.

Use a provider and pay per SMS. It's the cheapest and fastest way.



回答2:

I used kannel on a linux box with an old mobile phone connected via a serial cable to the box. Got a pre-paid card in the phone as I was using it for private use only. Worked like a charm!



回答3:

You might take a look at Gammu if you're running on a Linux box:

http://www.gammu.org

Using Gammu, you can configure it to periodically poll a mobile phone for new SMS messages. When Gammu finds new messages, it can store them in an SQL database. You can then write another program to periodically poll the database and take action on new messages.

Using this general setup I successfully deployed a homemade 2-way SMS application. I configured Gammu to pull messages off of the phone over Bluetooth. Gammu placed them in a MySQL database, which I had a Tomcat web application periodically poll for new messages. When a new message was found, the system processed the message.

This is a somewhat "duct-tape and bailing wire" setup, but it worked quite well and was more reliable than many of the "professional" SMS gateways I tested beforehand. YMMV.



回答4:

We've used mBlox (http://www.mblox) in the past, as they provide comprehensive international coverage, premium SMS, various levels of Quality of Service vs Price, and a solid Java-based API for both inbound and outbound SMS.



回答5:

You will need an SMS gateway, googling "SMS gateway" will reveal many. I have used http://www.clickatell.com/products/sms_gateway.php with great success.

I do not know of any open source implementations, but will be monitoring this thread in case someone else does!



回答6:

First, you need an SMS gateway. Take a look at Kannel SMS Gateway.



回答7:

Agreed with Kannel. You can set it up on a LAMP server with a GSM modem too.



回答8:

I'm not up with Java, so here's a nice guide on how to do it in Ruby on Rails: http://www.lukeredpath.co.uk/2007/8/29/sending-sms-messages-from-your-rails-application

If you want to send 'true' SMS you'll need to use an SMS gateway, (use of one is outlined in the above guide).

You can use MMS to send messages, to an email address that looks something like 1234567890@ messages.whatever.com. You can use mail functions to do this. There's some information about that here: http://contentdeveloper.com/2006/06/open-source-sms-text-messaging-application/



回答9:

TextMarks provides a service where they map an incoming SMS to them to an HTTP GET to a URL you provide and then send the response back as another SMS. They don't charge you if you let them add some advertising to the reply SMS. The problem is they don't provide this for free anymore for T-Mobile due to T-Mobile charging them. I'd be willing to pay per message, but they charge $0.20 per user-month, which is rather steep. Anyone know of anyone who provides this service?



回答10:

You actually don't need an SMS gateway; nearly every cell phone can send/receive SMS messages to/from any email address. I built an SMS service (http://www.txtreg.net) using Nearly Free Speech's ability to forward email to a URL as a POST request. User sends a text to an email address, PHP script processes it, and sends an email right back to their phone.



回答11:

Try SMS Enabler software. To receive SMS messages it uses a 3G/4G/GSM USB modem connected to a pc. It can forward incoming messages to a URL over HTTP, or store them in a database table, or write them to a CSV file, in real-time.



标签: java sms