论文部分内容阅读
摘 要 短消息业务作为一种极具吸引力的增值业务,已经得到了越来越多用户的认可。短信网关,英文简称ISMG,全称Internet Short Message Gateway,主要是为了解决不同网络、不同运营商之间的短信互通和服务提供商的接入问题。它为应用单位收发短信提供了一个动态的数据交换平台。笔者结合单位应用实际就移动短信网关二次开发与实现方面的心得体会做了介绍,说明了二次开发涉及的短信接口的开发和短信服务软件的开发的原理。
关键词 短消息业务;短信网关;二次开发;函数;ISMG
中图分类号:TP31 文献标识码:A 文章编号:1671-7597(2013)19-0151-01
1 概述
短消息业务作为一种极具吸引力的增值业务,已经得到了越来越多用户的认可。除了大量使用的手机用户到手机用户的点对点短信业务之外,从各种信息平台到手机的短消息业务也在快速发展,该业务已经成为广大用户及时方便地获取信息的一种手段。
而各种消息平台的建设基本都要利用到短信网关。短信网关,英文简称ISMG,全称Internet Short Message Gateway,主要是为了解决不同网络、不同运营商之间的短信互通和服务提供商的接入问题。它为应用单位收发短信提供了一个动态的数据交换平台。通过该系统提供的函数接口,可以将该短信平台与各种软件和系统进行高效的无缝相连,将应用单位系统或软件随时产生的动态信息转变成手机短信,通过单位的短信网关经过互联网发送至运营商的短信中心,然后以特服号码的形式进行实时的发送和接收。
而运营商提供短信网关的时候,一般只提供了一个内置的短信发送平台和短信网关接口函数说明,不提供了二次开发支持,而要让短信網关与应用单位的系统或软件无缝连接,就需要有针对性的进行二次开发。
2 设计目标
单位现有信息管理系统在业务流转的过程中,每个环节完成后,下个环节的承办人员无法及时了解到业务的最新状态,无法第一时间处理,导致了业务进度的耽误和工作效率的降低。因此计划利用短信网关实现与应用单位的系统无缝连接,在业务流转的各个环节完成后及时向相应人员发送提醒短信。同时也可以实现向客户发送业务状态最新状况的短信,提升客户满意度。
3 开发与实现
现在以移动短信网关为例子介绍下短信网关二次开发与实现一些体会,数据库使用的是微软公司的SQL Server,使用Visual C#开发语言。短信网关的二次的开发主要分为两部分。短信接口的开发和短信服务软件的开发。短信接口的功能主要是实现向数据库短信发送表存入待发送的数据。短信服务软件功能主要是通过定时扫描短信发送表,来判断短信发送表中是否有新记录,如果有新记录,则将新记录读出来,并将这些记录写入短信服务程序的待发短信列表中。短信服务程序逐条发送待发短信列表中的短信,发送成功后,从待发短信表中删除对应待发短信同时修改短信发送表中对应短信发送记录的状态为“成功”。在待发短信列表中应设置一个短信最大发送次数字段,目的是为了让达到最大发送次数后还是发送不成功的短信从待发短信表中删除,避免资源的浪费。
短信网关二次开发主要架构如下图所示。
短信接口的设计相对简单,以下主要介绍短信服务程序的设计与开发。短信服务程序主要由两个模块组成,定时扫描模块功能主要是在计时器控制下定时扫描短信发送表,把扫描到的未发短信写入待发送短信表;短信发送模块读取待发短信表,利用移动短信网关提供的API函数接口实现短信发送。在这里主要用到三个函数,分别为初始化函数,释放函数,短信发送函数。发送短信前,需要使用初始化函数,创建与移动短信网关数据库的连接。连接成功后使用短信发送函数发送短信。发送成功后使用释放接口函数,关闭与移动短信网关数据库的连接。在使用这些函数之前需要引入移动短信网关对应的动态链接库SMEntry.dll,然后申明函数,最后调用函数。
初始化函数申明如下:public static extern int SP_Startup(string DBName,string Account,string Password),然后调用该函数。参数Server是移动短信网关所在的机器名称或IP地址;参数Account,Password分别是移动短信网关内置数据库用户名和密码。Ret返回值为0表示初始化成功。该函数可能出现的错误代码有:-1002、-1013。
短信发送函数申明如下:public static extern int SubmitShortMessage(string AtTime,string SourceAddr,string DestAddr,string Content,uint ContentLen,byte NeedStateReport,string ServiceID,string FeeType,string FeeCode)。参数AtTime表示发送短信的时间,如果为空则立即发送;SourceAddr表示待发送短信的源地址;DestAddr表示待发送短信的目的地址;Content表示短信内容;ContentLen表示短信内容的字节长度;NeedStateReport表示发送该短信是否需要状态报告。该参数可以使用两个值,0或1,分别表示不需要或需要状态报告。Ret返回值为0表示短信发送成功。该函数可能出现的错误代码有:-1001、-1002、-1005、-1061。
4 结束语
通过对移动短信网关的二次开发,有效的提高了业务的流转效率、也提升了客户满意度,使用一年多以来正常发送短信近万条。通过这次尝试,也为以后进一步丰富扩展移动短信网关的作用打下了积累了经验。
参考文献
[1]中国移动通信集团公司.QB-GF-028-2003中国移动通信互联网互联网短信网关接口协议 版本号:3.0.0.
[2]王永皎,廖建军.Visual C# 2005 + SQL Server2005数据库开发与实例[M].清华大学出版社.
关键词 短消息业务;短信网关;二次开发;函数;ISMG
中图分类号:TP31 文献标识码:A 文章编号:1671-7597(2013)19-0151-01
1 概述
短消息业务作为一种极具吸引力的增值业务,已经得到了越来越多用户的认可。除了大量使用的手机用户到手机用户的点对点短信业务之外,从各种信息平台到手机的短消息业务也在快速发展,该业务已经成为广大用户及时方便地获取信息的一种手段。
而各种消息平台的建设基本都要利用到短信网关。短信网关,英文简称ISMG,全称Internet Short Message Gateway,主要是为了解决不同网络、不同运营商之间的短信互通和服务提供商的接入问题。它为应用单位收发短信提供了一个动态的数据交换平台。通过该系统提供的函数接口,可以将该短信平台与各种软件和系统进行高效的无缝相连,将应用单位系统或软件随时产生的动态信息转变成手机短信,通过单位的短信网关经过互联网发送至运营商的短信中心,然后以特服号码的形式进行实时的发送和接收。
而运营商提供短信网关的时候,一般只提供了一个内置的短信发送平台和短信网关接口函数说明,不提供了二次开发支持,而要让短信網关与应用单位的系统或软件无缝连接,就需要有针对性的进行二次开发。
2 设计目标
单位现有信息管理系统在业务流转的过程中,每个环节完成后,下个环节的承办人员无法及时了解到业务的最新状态,无法第一时间处理,导致了业务进度的耽误和工作效率的降低。因此计划利用短信网关实现与应用单位的系统无缝连接,在业务流转的各个环节完成后及时向相应人员发送提醒短信。同时也可以实现向客户发送业务状态最新状况的短信,提升客户满意度。
3 开发与实现
现在以移动短信网关为例子介绍下短信网关二次开发与实现一些体会,数据库使用的是微软公司的SQL Server,使用Visual C#开发语言。短信网关的二次的开发主要分为两部分。短信接口的开发和短信服务软件的开发。短信接口的功能主要是实现向数据库短信发送表存入待发送的数据。短信服务软件功能主要是通过定时扫描短信发送表,来判断短信发送表中是否有新记录,如果有新记录,则将新记录读出来,并将这些记录写入短信服务程序的待发短信列表中。短信服务程序逐条发送待发短信列表中的短信,发送成功后,从待发短信表中删除对应待发短信同时修改短信发送表中对应短信发送记录的状态为“成功”。在待发短信列表中应设置一个短信最大发送次数字段,目的是为了让达到最大发送次数后还是发送不成功的短信从待发短信表中删除,避免资源的浪费。
短信网关二次开发主要架构如下图所示。
短信接口的设计相对简单,以下主要介绍短信服务程序的设计与开发。短信服务程序主要由两个模块组成,定时扫描模块功能主要是在计时器控制下定时扫描短信发送表,把扫描到的未发短信写入待发送短信表;短信发送模块读取待发短信表,利用移动短信网关提供的API函数接口实现短信发送。在这里主要用到三个函数,分别为初始化函数,释放函数,短信发送函数。发送短信前,需要使用初始化函数,创建与移动短信网关数据库的连接。连接成功后使用短信发送函数发送短信。发送成功后使用释放接口函数,关闭与移动短信网关数据库的连接。在使用这些函数之前需要引入移动短信网关对应的动态链接库SMEntry.dll,然后申明函数,最后调用函数。
初始化函数申明如下:public static extern int SP_Startup(string DBName,string Account,string Password),然后调用该函数。参数Server是移动短信网关所在的机器名称或IP地址;参数Account,Password分别是移动短信网关内置数据库用户名和密码。Ret返回值为0表示初始化成功。该函数可能出现的错误代码有:-1002、-1013。
短信发送函数申明如下:public static extern int SubmitShortMessage(string AtTime,string SourceAddr,string DestAddr,string Content,uint ContentLen,byte NeedStateReport,string ServiceID,string FeeType,string FeeCode)。参数AtTime表示发送短信的时间,如果为空则立即发送;SourceAddr表示待发送短信的源地址;DestAddr表示待发送短信的目的地址;Content表示短信内容;ContentLen表示短信内容的字节长度;NeedStateReport表示发送该短信是否需要状态报告。该参数可以使用两个值,0或1,分别表示不需要或需要状态报告。Ret返回值为0表示短信发送成功。该函数可能出现的错误代码有:-1001、-1002、-1005、-1061。
4 结束语
通过对移动短信网关的二次开发,有效的提高了业务的流转效率、也提升了客户满意度,使用一年多以来正常发送短信近万条。通过这次尝试,也为以后进一步丰富扩展移动短信网关的作用打下了积累了经验。
参考文献
[1]中国移动通信集团公司.QB-GF-028-2003中国移动通信互联网互联网短信网关接口协议 版本号:3.0.0.
[2]王永皎,廖建军.Visual C# 2005 + SQL Server2005数据库开发与实例[M].清华大学出版社.