欢迎来到天天文库
浏览记录
ID:26899943
大小:76.50 KB
页数:6页
时间:2018-11-29
《短信平台API说明书.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
短信平台API说明书Version1.2一、主要接口函数:1、查询短信:设置接收到的短信状态,inMessage是接收到的某条短信,函数返回这条短信是否已经被处理了voidsetHandled(SmsinMessage);查询未处理的短信,返回接收到的未进行处理的短信列表ListfindUnhandledMessage();查询某个时间段内的短信,startDate是起始时间,endDate是结束时间,返回的是在这个时间段内的所有短信,包括接收到的短信和发送出去的短信。ListfindMessageByTime(DatestartDate,DateendDate);查询某个时间段内的短信,startDate是起始时间,endDate是结束时间,返回的是在这个时间段内接收到的所有短信,包括已处理的和未处理的。ListfindInMessageByTime(DatestartDate,DateendDate);查询某个时间段内的短信,startDate是起始时间,endDate是结束时间,返回的是在这个时间段内接收到的所有短信,包括已分发的和未分发的。ListfindOutMessageByTime(DatestartDate,DateendDate);查询指定号码对应的短信,可以查询指定号码在接收到的短信中作为发送者的短信和在发送的短信中作为接收者的短信,这些短信都没有状态的限定,将所有对应的短信都列出来;参数number是一个String类型,表示指定号码。ListfindMessageByNumber(Stringnumber);在接收队列中查询指定号码对应的短信。ListfindInMessageByNumber(Stringnumber);在发送队列中查询指定号码对应的短信。ListfindOutMessageByNumber(Stringnumber);在发送队列中查询未进行分发的短信。ListfindUndispatchedMessage();2、发送短信:发送短信,返回短信是否发送成功的报告,用于单发;number是待接收短信的号码列表,context是短信内容。发送完毕后短信立即从数据库中自动删除,不再保留。 voidsendMessage(Stringnumber,Stringcontext);发送短信,功能和上述类似,用于群发;numbers是待接收短信的号码列表。voidsendMessages(Listnumbers,Stringcontext);发送短信,功能和上述类似,用于单发,validityPeriod是短信在数据库中要保留的有效期,从将短信分发出去时算起,默认是10天;有效期后,短信自动从数据库中删除。voidsendMessage(Stringnumber,Stringcontext,intvalidityPeriod);发送短信,功能和上述类似,用于群发;numbers是待接收短信的号码列表。voidsendMessages(Listnumbers,Stringcontext,intvalidityPeriod);设置定时发送短信,可以在timeToSend指定的日期时间发送短信。voidsendMessage(Stringnumber,Stringcontext,DatetimeToSend);设置定时发送短信,功能和上述类似,numbers是待接收短信的号码列表。voidsendMessages(Listnumbers,Stringcontext,DatetimeToSend);设置定时发送短信,功能和上述类似,validityPeriod是短信在数据库中保留的有效期。voidsendMessage(Stringnumber,Stringcontext,DatetimeToSend,intvalidityPeriod);设置定时发送短信,功能和上述类似,numbers是待接收短信的号码列表。voidsendMessages(Listnumbers,Stringcontext,DatetimeToSend,intvalidityPeriod);3、删除短信:删除某条短信,可能是收到的也可能是发送的,用于手动删除。voiddeleteMessage(Smssm);删除某个时间段内的所有短信,startDate是起始时间,endDate是结束时间,返回短信是否成功删除的报告。booleandeleteMessagesByTime(DatestartDate,DateendDate);在接收队列中删除某个时间段内的所有短信。booleandeleteInMessagesByTime(DatestartDate,DateendDate);在发送队列中删除某个时间段内的所有短信。booleandeleteOutMessagesByTime(DatestartDate,DateendDate);4、关闭服务:结束所有线程,关闭短信平台服务voidterminal();二、JSMServerConfig.xml——XML文件中的属性: 1、driverClassName:设置数据库链接驱动程序的名称,如“com.mysql.jdbc.Driver”;2、url:设置MySQL数据库的连接路径,如“jdbc:mysql://localhost/jsms”;3、username:设置数据库的用户名,如“root”;4、password:设置数据库的使用密码,如“nothing”;5、portID:设置短信设备使用的端口号,如“COM3”6、baud:设置短信设备与PC之间传送数据的波特率,如“115200”三、短信实体类图:四、数据库安装向导:使用Navicat创建一个名为jsms的MySQL数据库,选择数据库默认字符集为utf-8,然后使用console载入短信平台API目录下的文件jsms.sql运行即可。数据库中会有两张表in_sms和out_sms,分别用于存储收到的短信和发送的短信。五、短信平台API资源使用步骤:如下所示是短信平台API工具包的资源目录图: 1、将rxtxSerial.dll拷贝到您的项目根目录下(MyEclipse);如果您使用的是Eclipse,则务必要将该文件拷贝到您的项目所使用的JRE的Bin目录下;2、将lib目录下的所有jar包附加到您的项目Build-Path中,如果项目中已经存在功能相似的包,可以不加。您也可以先把lib目录下的所有文件先拷贝到您的项目自定义类库中,再附加到编译环境中;3、将src目录下的文件JSMServerConfig.xml、InSms.hbm.xml、OutSms.hbm.xml复制到您的项目src目录下。并且根据您项目需要和开发环境、设备参数、数据库路径、数据表名等具体要求进行配置;4、JSMServerConfig.xml文件中的数据源Bean:InSms.hbm.xml//指明该文件在项目中的存放路径OutSms.hbm.xml//指明该文件在项目中的存放路径org.hibernate.dialect.MySQLDialectfalse5、InSms.hbm.xml文件中的数据表映射类://指明表in_sms的数据库名6、OutSms.hbm.xml文件中的数据表映射类://指明表out_sms的数据库名7、参照src目录下的文件jsmtest.java中的代码编写您的项目短信模块;importjava.util.Date;importjava.util.Iterator;importjava.util.LinkedList;importjava.util.List;importdao.*;importJSMServer.*;importorg.jsmsengine.*;importthread.*; importorg.springframework.context.ApplicationContext;importorg.springframework.context.support.ClassPathXmlApplicationContext;publicclassjsmtest{publicstaticvoidmain(String[]args){//以下几行是项目程序文件中必须的!ApplicationContextctx=newClassPathXmlApplicationContext("JSMServerConfig.xml");SMServercaasms=(SMServer)ctx.getBean("CAASMServer");//caasms是服务控制台,使用前必须先初始化才能正常启动caasms.initialization();//以下是您编写的短信模块代码/***@用户自定义程序代码*/}}六、常见问题处理方法:1、如何判断设备已连接PC?最简单的办法是利用系统自带的超级终端。当然,您首先得保证设备可用,接口驱动工作正常,从而能够在您的设备管理器中识别该设备并读出其设备号。建立超级终端连接时,您应该选择能够使设备正常工作的端口号和波特率。如果设备连接上PC,您键入的每条正确的AT指令都会得到设备响应。2、无法识别并打开串口怎么办?检查您的项目中是否已经引入了通用串口驱动包RXTXcomm.jar和rxtxSerial.dll的支持,这两个文件缺一不可。如果不是这个问题,检查您的jre是否正确。该短信平台最好能够工作在JDK1.5以上的环境,并且有且只有一个JRE。多个JDK运行环境可能会相互冲突。3、数据库无法连接怎么办?首先检查您的JSMServerConfig.xml、InSms.hbm.xml、OutSms.hbm.xml文件中关于数据库的一些参数是否都已设置正确。如果不是这个问题,检查您是否把数据库驱动包mysql-connector-java-5.0.7-bin.jar附加到您的编译路径去了。当然,您也可以使用比该驱动包更高的版本来实现与MySQL数据库的连接。4、设备端口被占用,或者出现FramingError等错误怎么办?这可能是设备响应滞后,或者被您之前的测试程序线程占用而没有释放资源引起的。您可以尝试着重启您的项目,或者拔出USB接口再接回去即可。5、发送出去的短信乱码,或者接收到的短信存入数据库后出现乱码怎么办? 这跟您的MySQL数据库默认字符集有关。重新配置您的MySQL数据库管理器,选择默认的字符集为utf-8而不是latin1,再重启您的数据库服务即可。另外,请保证您在创建数据库时导入的sql文件里面的两张表的“DEFAULTCHARSET=gbk”,而数据库字符集是utf8或者gbk。
此文档下载收益归作者所有
举报原因
联系方式
详细说明
内容无法转码请点击此处