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

Posted

技术标签:

【中文标题】Java 发送和接收短信。免费短信网关?【英文标题】:Java send and receive SMS. Free SMS gateway? 【发布时间】:2011-05-09 20:53:57 【问题描述】:

关于 SOverflow 的一些问题,我找到了THIS。但是它说它目前不可用,并且可能永远不会可用。

基于THIS我意识到没有必要建立自己的短信服务。

那么问题来了:

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

Simplewire Kit 看起来很简单,但演示示例失败了,因为我没有Simplewire account。 Simplewire 文档说发送 SMS 有 30 天的试用期。但这有两种方式:

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

【问题讨论】:

这可能会有所帮助***.com/questions/2570410/how-to-send-sms 【参考方案1】:

仅供参考 Simplewire 现在是 OpenMarket.com/MXTelecom.com

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

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

短代码:您可以获取自己的 (www.openmarket.com) 或与他人共享 (www.clickatell.com) 您可以使用一项新服务 www.twilio.com 看起来不错但尚未测试。

如果您只需要一种通信方式,您可以使用email to gateway sms 之类的方式,但您需要知道最终用户所在的运营商。

【讨论】:

您也可以将移动设备用作 gsm 调制解调器。这是免费的。我发现这对我的项目非常有趣。 play.google.com/store/apps/details?id=com.gsmmodem【参考方案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

【讨论】:

【参考方案3】:

是的,您可以在 5 分钟内构建自己的 API。您的 android 手机可以作为服务器 API 使用 Java 代码发送和接收 SMS。这样做非常简单。有一些基本步骤

    在您的手机GSM Modem FREE SMS in JAVA 的 Playstore 中下载 Android GSM 调制解调器应用程序 您还需要帮助工具来发送或接收短信而不受任何干扰。您还可以在 android 中扩展您的功能GSM Modem Helper Tool

    如果你想一步一步地学习。还有指南和视频教程。 Send or receive FREE SMS in Java

    public class SMSSender 
    public static void main(String[] args) throws Exception
    // TODO Auto-generated method stub
    String message = "Junk characters? method sendMultipartTextMessage only send text message. If you want to send non text message, you should look to method sendDataMessage. Below is the code excerpt from android cts. It has example on how to send long messages.";      
    String phone = "92***********";
    String username = "abcd";
    String password = "1234";
    String address = "http://192.168.1.101";
    String port = "8090";
    
    URL url = new URL(
            address+":"+port+"/SendSMS?username="+username+"&password="+password+
            "&phone="+phone+"&message="+URLEncoder.encode(message,"UTF-8"));
    
    URLConnection connection = url.openConnection();
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
    String inputLine;
    while((inputLine = bufferedReader.readLine()) !=null)
        System.out.println(inputLine);
    
    bufferedReader.close();
    
    
    

【讨论】:

以上是关于Java 发送和接收短信。免费短信网关?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法通过 FreeSWITCH 上的网关桥接短信?

用DELPHI做短信发送功能

通过短信网关发送短信www.smsmatrix.com

发送短信

通过发送短信www.smsmatrix.com使用PHP的短信网关

2018 07 短信认证网关的具体实现