您的位置:首页 > 编程语言

中国联通短信网关接入程序源代码(SGIP1.2协议)

2015-12-27 02:42 561 查看
http://sunnylocus.iteye.com/blog/567374#bc2382420

自从我发了博文“中国联通SP业务开发总结”后有很多的朋友问我开发上一些问题,开发接入程序必须有一定的socket编程基础,且必须熟悉sgip1.2协议才可以,我应一位网友的要求将我开发的短信接入程序源代码发布,希望对开发短信业务的朋友提供一些帮助,代码可自由传播。如有疑问请留言,我会尽量解答。

ps:

lib.rar是短信程序所用到的jar包,有很多朋友问我要jar包,现在给补上。

[lib]

+----jdom1.1.jar

+----log4j-1.2.16.jar

+----mail.jar

+----xerces.jar

lib里还少一个jar包,xercesImpl.jar,继续补上。

2011-04-15 新包发布 v1.1

修改内容:

修改com.tdt.unicom.sgip.svr.SPSender类,将计时器Timer改为ScheduledExecutorService,在测试中发现Timer内部异常时,会将错误传染给倒霉的调用者,导致下发线程全部中断。
优化了短信下发的流程。
修复了群发短信时,只有一个手机能收到短信的bug。

以上bug都是根据网友反馈发现的,在这里表示感谢。

2011-12-16 新包发布 v1.2

修改内容:

修改com.tdt.unicom.sgip.svr.SPSender类,上一个版本中,如果联通网关断开连接,SP端再次发送短信时,会出现异常,导致短信无法行,v1.2版本已修复该bug。

感谢网友“白开水”的反馈。

2012-02-08 新包发布 v1.3

修改内容:

将SP的源节点编号,SMG网关的登陆用户名和密码在productionConf.xml配置文件中进行配置,无需再修改源代码的参数。

2013-06-08新包发布 v1.4

修改内容:

根据反馈,在下发线程因异常中断时,后续的短信无法再继续发送,必须重启才能 解决,该版本修复了该bug,当有线程异常退出时,自动生成的新线程替代已异常退出的线程
优化了在高并发环境下发送的策略,如果下发线程全部忙碌,采用谁调用谁发送。
预留相关接口,如果想将收到短信插入数据库,转发其它业务层等请在com.tdt.unicom.sgip.svr.UnicomSPMonitor的transmitDeliverMsg方法实现自己的业务逻辑处理。

/**

* 将收到的短信转发给相应的业务逻辑处理层

* 转发方式Socket、Http、WebService

* @param command

*/

public void transmitDeliverMsg(final SGIPCommand command) {
}

特别说明:

有朋友在测试我的短信程序时,会出现Exception in thread "MT-thread-0" java.lang.RuntimeException: java.net.SocketException: Software caused connection abort: recv failed

这个异常,这是因为你测试机器的IP地址没有在联通短信平台上备案,联通SMG有一个白名单,只有你的IP地址出现在这个白名单时你才会与SMG网关建立socket连接,否则会被联通的防火墙拦截。这个异常就是因为你的socket连接被对方的防火墙给拦截了。


感谢网友“明晓”协助测试!

=====================================================================

如何打包,并加载第三方类库?

有童鞋下载了源代码,修改代码打好包后不知道如何加载第三方类库,下面是如如何加载第三方类库的方法。

1、在打好包(假设打好的包叫UNICOM.jar)的目录下,新建一个目录SGIP_LIB,将用到的第三方类库拷贝到该目录下

2、在打好包的目录下,新建一个目录SGIP_Config,用winrar压缩软件打开UNICOM.jar包,将所有配置文件拖到SGIP_Config目录下

3、用Winrar压缩软件打开UNICOM.jar包META-INF目录下的MANIFEST.MF文件,加入

Class-Path: ./SGIP_Config/ ./SGIP_LIB/log4j-1.2.16.jar ./SGIP_LIB/jdom1.1.jar ./SGIP_LIB/mail.jar ./SGIP_LIB/xerces.jar ./SGIP_LIB/xercesImpl.jar

4、保存退出,在终端运行Java -jar ./UNICOM.jar即可启动短信平台(注意Class-Path未尾一定要加空格!!!)

UNICOM.rar (3.7 MB)
描述: 过时版本
下载次数: 3802

lib.rar (3 MB)
下载次数: 1863

xercesImpl.jar (1.3 MB)
下载次数: 1492

UNICOM_v1.1.rar (2.8 MB)
描述: 2011-04-15 发布 新版本
下载次数: 954

UNICOM_v1.2.rar (146.1 KB)
描述: 2011-12-16 发布 v1.2
下载次数: 745

UNICOM_v1.3.rar (154.5 KB)
描述: 2012-02-08 发布 v1.3
下载次数: 1131

UNICOM_v1.4.rar (65.9 KB)
下载次数: 786
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: