来自Java Web应用程序的SMS

时间:2014-11-30 10:12:14

标签: java web sms

我有短信服务器,我想从我的java网络应用程序发送和接收短信。 我是怎么做到的?

谢谢,

3 个答案:

答案 0 :(得分:0)

通常,您可以通过HTTP API使用SMS服务器,例如发送请求

http://your-server-name/sendSms?nr=55534563&msg=hello+world

您应该在服务器的文档中查找确切的信息。

有关如何发送HTTP请求的一般示例,请参阅this answer (GET) and this answer (POST)

答案 1 :(得分:0)

根据您的短信网关API规范,您必须:

  • 拨打http网址发送短信
  • 通过http调用您的Java应用程序以接收短信

看看这个example of SMS api specifications,它还包括几个不同编程语言的代码示例。

答案 2 :(得分:0)

Ogham 库。发送短信的代码很容易编写(它会自动处理字符编码和消息拆分)。真正的 SMS 使用 SMPP 协议(​​标准 SMS 协议)或通过提供商 API 发送。 您甚至可以使用 SMPP 服务器在本地测试您的代码,以便在支付真正的 SMS 发送费用之前检查您的 SMS 的结果。 由于采用SMPP标准协议,所以可以使用很多提供商。

package fr.sii.ogham.sample.standard.sms;

import java.util.Properties;

import fr.sii.ogham.core.builder.MessagingBuilder;
import fr.sii.ogham.core.exception.MessagingException;
import fr.sii.ogham.core.service.MessagingService;
import fr.sii.ogham.sms.message.Sms;

public class BasicSample {
    public static void main(String[] args) throws MessagingException {
        // [PREPARATION] Just do it once at startup of your application
        
        // configure properties (could be stored in a properties file or defined
        // in System properties)
        Properties properties = new Properties();
        properties.setProperty("ogham.sms.smpp.host", "<server host given by the provider>");                                 // <1>
        properties.setProperty("ogham.sms.smpp.port", "<server port given by the provider>");                                 // <2>
        properties.setProperty("ogham.sms.smpp.system-id", "<system ID given by the provider>");                       // <3>
        properties.setProperty("ogham.sms.smpp.password", "<password given by the provider>");                         // <4>
        properties.setProperty("ogham.sms.from.default-value", "<phone number to display for the sender>");  // <5>
        // Instantiate the messaging service using default behavior and
        // provided properties
        MessagingService service = MessagingBuilder.standard()                                               // <6>
                .environment()
                    .properties(properties)                                                                  // <7>
                    .and()
                .build();                                                                                    // <8>
        // [/PREPARATION]
        
        // [SEND A SMS]
        // send the sms using fluent API
        service.send(new Sms()                                                                               // <9>
                        .message().string("sms content")
                        .to("+33752962193"));
        // [/SEND A SMS]
    }
}

还有许多其他的 featuressamples / spring samples