`

java FYOpenApi实现短信发送

    博客分类:
  • java
 
阅读更多
1.配置文件
sms.OpenUrl = http://smsapi.c123.cn/OpenPlatform/OpenApi
sms.DataUrl = http://smsapi.c123.cn/DataPlatform/DataApi
sms.account= 111
sms.authkey = 222
sms.cgid = 52
sms.csid = 0


2.发送相关代码
import com.shcm.bean.SendResultBean;
import com.shcm.bean.SendStateBean;
import com.shcm.send.DataApi;
import com.shcm.send.OpenApi;

import java.util.List;

public class SmsSender {
    //发送短信接口地址
    private static String sOpenUrl = SmsConfig.getString("sms.OpenUrl");
    //获取信息接口地址
    private static String sDataUrl = SmsConfig.getString("sms.DataUrl");
    // 接口帐号
    private static final String account = SmsConfig.getString("sms.account");
    // 接口密钥
    private static final String authkey = SmsConfig.getString("sms.authkey");
    // 通道组编号: 52, 184, 185
    private static final int cgid = SmsConfig.getInt("sms.cgid");
    // 默认使用的签名编号(未指定签名编号时传此值到服务器)
    private static final int csid = SmsConfig.getInt("sms.csid");

    private static final String WRITER = "xxxx"; //签名

    static {
        // System.out.println(sOpenUrl + "," + account + "," + authkey + "," + cgid + "," + csid);
        // 发送参数
        OpenApi.initialzeAccount(sOpenUrl, account, authkey, cgid, csid);

        // 状态及回复参数
        DataApi.initialzeAccount(sDataUrl, account, authkey);
    }

    public static List<SendResultBean> sendOnce(String mobile, String content) throws Exception {
        // 发送短信
        return OpenApi.sendOnce(mobile, content, 0, 0, null);
        //return OpenApi.sendOnce(new String[]{"18297974783","15102110086"}, "测试内容", 0, 0, null);
        //return OpenApi.sendBatch("18297974783,15102110086", "测试内容{|}测试内容", 0, 0, null);
        //return OpenApi.sendBatch(new String[]{"18297974783","15102110086"}, new String[]{"测试内容","测试内容"}, 0, 0, null);
        //return OpenApi.sendParam("18297974783,15102110086", "测试内容{p1}", new String[]{"a{|}b"}, 0, 0, null);
        //return OpenApi.sendParam(new String[]{"18297974783","15102110086"}, "测试内容{p1}", new String[]{"a{|}b"}, 0, 0, null);
    }

    public static List<SendResultBean> sendBatch(String[] mobiles, String content) throws Exception {
        // 发送短信
        return OpenApi.sendOnce(mobiles, content, 0, 0, null);
    }

    public static List<SendStateBean> getSendState() {
        return DataApi.getSendState();
    }

    public static void main(String[] args) throws Exception {
     
        sendOnce("13655203020", "发送内容");
    }
}



import java.io.File;
import java.io.FileInputStream;
import java.util.Properties;

/**
 * @author xxx
 * @desc 读取配置文件信息
 *
 */
public class SmsConfig {
    static final Properties prop;
    static String workdir = System.getProperty("user.dir");

    static {
        String PROPERTIES_FILE_SYSTEM_VAR = "application.properties";
        String propertiesFile = System.getProperty(PROPERTIES_FILE_SYSTEM_VAR);
        if (propertiesFile == null) {
            propertiesFile = "/properties/application.properties";
        }
        System.out.println("work dir : " + workdir);
        prop = loadFile(propertiesFile);
    }

    public static Properties loadFile(String propertiesFile) {
        Properties proper = new Properties();
        try {
            File f = new File(workdir + propertiesFile);
            if (f.exists() && f.isFile()) {
                // 优先读取工作目录下的配置文件
                proper.load(new FileInputStream(f));
            } else {
                proper.load(SmsConfig.class.getResourceAsStream(propertiesFile));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return proper;
    }

    public static String getString(String key, String defaultValue) {
        return prop.getProperty(key, defaultValue);
    }

    public static String getString(String key) {
        return prop.getProperty(key);
    }

    public static int getInt(String key) {
        return getInt(key, 100);
    }

    public static int getInt(String key, int defaultValue) {
        try {
            return Integer.parseInt(prop.getProperty(key, String.valueOf(defaultValue)));
        } catch (Exception e) {
            return defaultValue;
        }
    }

}



3.引入相应jar包
FYOpenApi.jar


分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    java代码实现发送短信,中国电信smgp协议api

    在中国电信的SMGP(Short Message Gateway Protocol)协议中,发送短信功能是通过API接口来实现的,这在Java编程环境中尤为常见。SMGP是专为短消息服务设计的一种通信协议,用于连接短信中心(SMSC)和短信网关,...

    cmpp2.0短信网关发送短信代码(java)

    CMPP2.0短信网关发送短信代码是Java开发者用于与中国移动通信集团的短信服务进行交互的一种技术实现。CMPP(China Mobile Short Message Peer-to-Peer)2.0协议是移动运营商提供的一种通信协议,主要用于短信业务的...

    基于Java封装短信协议CMPP/SGIP/SMGP/SMPP的http接口短信发送设计源码

    该项目为Java语言编写的短信发送解决方案,采用CMPP、SGIP、SMGP、SMPP等多种短信协议进行封装,通过提供简单的HTTP接口,实现短信的快速发送。项目包含512个Java源文件,2个XML配置文件,以及1个Git忽略文件、1个...

    java实现短信功能简单的例子

    ### Java实现短信功能详解 在IT领域,Java作为一种广泛应用的编程语言,在企业级应用、Web开发、移动设备软件开发等方面有着不可替代的地位。其中,利用Java实现短信功能是许多应用场景中的一个常见需求,例如在...

    java实现给指定手机号码发送文字短信

    在Java编程环境中,发送短信至指定手机主要涉及网络通信和HTTP请求的知识。下面将详细讲解这一过程中的关键技术和步骤...通过阅读和分析这些文件,可以更深入地了解如何在Java中实现给指定手机号码发送文字短信的功能。

    java实现发送短信验证码功能

    使用的是信易通的短信平台接口,然后在Java中使用HttpClient模拟POST请求或者GET请求(看短信平台要求,一般的情况下都是POST请求),调用短信平台提供的接口(遵循短信平台的接口规范即可)发送短信验证码

    华为短信api的java源码

    华为短信API的Java源码是用于与华为短信服务进行交互的一种开发工具,它允许开发者通过编程方式发送、接收和管理短信。在这个压缩包中,可能包含的文件是`smproxy`,这通常是一个代理服务器或者中间件,用于处理与...

    Topic: 怎样用java实现短信发送

    根据提供的信息,我们可以总结出以下关于如何使用Java实现短信发送的关键知识点: ### 一、问题背景与需求 原贴由用户`creatyang`于2003年4月18日发布,其拥有一个Siemens(西门子)手机及数据线,并希望通过编写...

    java实现短信验证登入实例

    Java 实现短信验证登录是一种常见的安全机制,它增强了用户的账户安全性,有效防止了恶意登录尝试。短信验证码的原理是:当用户尝试登录时,系统会向用户预先绑定的手机号码发送一个一次性密码(OTP,One-Time ...

    java短信猫收发短信的例子

    Java短信猫收发短信的例子是基于Java编程语言实现的一个实用工具,主要用于与短信猫设备进行交互,实现短信的发送和接收功能。短信猫是一种硬件设备,通常通过USB或串口连接到计算机,使得电脑能够通过GSM网络发送和...

    一个用Java编写的短信发送类

    让我们深入探讨这个短信发送类可能涉及的技术点和实现细节。 首先,短信发送类通常会依赖于一个第三方的短信服务提供商,如阿里云、腾讯云等,这些服务商提供了API接口供开发者调用。因此,Java类中会包含与这些API...

    Java+Demo对接中国移动 云MAS短信发送-Jar

    Java+Demo对接中国移动云MAS短信发送-Jar是一个关于使用Java编程语言与中国移动的云MAS(Mobile Application Server)服务进行集成,实现短信发送功能的技术实践。中国移动的云MAS平台为企业提供了强大的短信服务...

    Java发送短信的实现

    总的来说,Java发送短信涉及到与第三方短信服务提供商的接口交互,这需要理解HTTP请求和响应的基本概念,以及JSON数据的处理。通过以上步骤,你可以实现在Java应用程序中发送短信的功能。在实际开发中,还应考虑性能...

    Java短信收发;SMSLIB使用;java接收短信;java发送短信

    SMSLIB是一个用Java编写的开源库,它提供了短信发送和接收的功能,为开发者提供了方便的API来实现短信服务。本篇将详细介绍如何使用SMSLIB进行Java短信收发,并结合实际例子进行说明。 首先,理解SMSLIB的核心概念...

    java短信策略,防止短信盗刷,阿里云短信通道,短信通道安全策略,防短信轰炸

    短信策略防盗刷,防短信轰炸。 短信通道防盗刷方案: 1.使用安全图形验证码,增加识别难度,防止通过自动化工具进行攻击请求; 2.每日限制每个手机号的发送次数; 3.单Ip的请求次数限制,防止攻击者对服务器进行大量...

    java 短信发送程序

    本篇文章将详细探讨Java实现短信发送功能的核心技术和流程。 1. **SMS API和库** Java 短信发送通常依赖于SMS Gateway提供商提供的API。这些API允许开发者通过HTTP请求或Socket通信与短信服务商进行交互。例如,...

    java手机短信发送demo

    本示例将介绍如何利用阿里云短信服务API在Java环境中实现短信的发送功能。这是一个基于Maven构建的项目,因此我们需要理解Maven的项目结构和依赖管理。 首先,我们需要在阿里云官网注册账号并开通短信服务,获取...

    java实现发送短信

    在Java编程语言中实现短信发送功能,主要涉及的是与短信服务提供商进行通信或者利用特定硬件设备的API。这两种方法在实际应用中都有其适用场景,下面将分别详细讲解。 一、与短信服务提供商合作 1. **接口选择**:...

    中国电信SMGP协议短信发送

    在中国电信的通信网络中...通过`zjtelecom-1.0.jar`库和`SmgpUtil.java`工具类,开发者可以高效、便捷地实现短信服务,为各种业务场景提供支持。在实际开发时,应结合具体的业务需求和SMGP协议规范进行详细设计和实现。

Global site tag (gtag.js) - Google Analytics