Java 发送和接收短信。免费短信网关?

2022-09-02 22:33:48

在SOverflow上的一些问题上,我发现了这一点。但它说它目前不可用,可能永远不会可用。

基于,我意识到没有必要构建自己的SMS服务。

那么问题来了:

我的java应用程序必须向用户发送SMS消息并接收来自用户的SMS消息。我真的需要支付一些短信网关,还是有一些免费的短信网关(当然有一些限制)可以用来测试我的应用程序?

Simplewire Kit看起来非常简单,但演示示例失败了,因为我没有Simplewire帐户。Simplewire文档说,发送短信有30天的试用期。但这是双向的:

“对于2-Way,演示积分不可用,因为您将需要自己的手机号码托管在Simplewire的网络上。Simplewire 支持许多不同国家和地区的双向编号。请联系 Simplewire 了解更多信息。


答案 1

FYI Simplewire现已 OpenMarket.com/MXTelecom.com

有几个免费的SMS网关,但它们都在您的消息中附加了SMS广告以支付费用。ZeepMobile是我听说最多的一个。至于支付,有几个解决方案,但这一切都取决于您的需求。

双向通信需要最终用户订阅您的服务。有几种方法可以解决这个问题:

短代码:你可以得到自己的(www.openmarket.com)或与他人分享(www.clickatell.com)你可以使用一个新的服务 www.twilio.com 看起来不错,但还没有测试过。

如果您只需要一种方式进行通信,则可以使用电子邮件到网关SMS之类的东西,但是您需要知道最终用户所在的运营商。


答案 2

Fowiz提供免费的基于Android的解决方案,以从应用程序发送/接收短信。您需要在设备上安装他们的Android应用程序才能启用此服务,并且消息将在您的手机上发送/接收。您可以设置 CallbackUrl 以接收有关传入消息的即时通知。Fowiz还支持短代码,竞选管理,投票等。

通过 Fowiz 发送消息的示例代码:

    String myPasscode = 'your passcode';
    String myUsername = 'your fowiz username';    
    String toPhoneNumber = 'recipient phone number';
    String myMessage = 'your message';

    HttpClient client = new DefaultHttpClient();
    HttpGet request = new HttpGet(HTTP_API + "?username="+myUsername
            "&phonenumber="+toPhoneNumber
    +"&message="+myMessage+"&passcode="+myPasscode);
    HttpResponse response = client.execute(request);

    BufferedReader rd = new BufferedReader
      (new InputStreamReader(response.getEntity().getContent()));

    String line = "";
    StringBuffer response = new StringBuffer();
    while ((line = rd.readLine()) != null) {
              response.append(line);
    }   

    System.out.println(response.toString());

资料来源:http://cloud.fowiz.com/2help.html


推荐