道路运输GPS监控系统程序设计_第1页
道路运输GPS监控系统程序设计_第2页
道路运输GPS监控系统程序设计_第3页
道路运输GPS监控系统程序设计_第4页
道路运输GPS监控系统程序设计_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、道路运输GPS监控系统详细设计方案成都蓝色沸点软件有限公司二三年六月修订时间修订人版本号修订内容目 录第一章引言7§1 系统详细分析的目的7§2 系统定义7§3 内容简介7§4 参考资料7§5 读者对象8第二章 系统环境构架8§1运行平台8§2开发工具8第三章 分布式程序模块接口8§1 程序模块调用和数据传输关系8§1.1调用和数据传输关系图8§1.2调用和数据传输关系描述10短信服务端短信端口10短信服务端终端服务端10终端服务端数据服务端10终端服务端监控端10数据服务端数据库11监控端数据

2、服务端11注册端数据服务端11统计端数据服务端11§1.3数据包传输协议定义12SMPP(V3.3)协议12车载短信协议12车载终端协议12车载监控协议12§2 短信应用服务程序13§2.1主要功能13§2.1.1 系统简介13§2.1.2 系统设计原则14§2.1.3 术语说明14§2.2系统结构14§2.2.1 结构说明14§2.2.2 系统结构图15§2.2.3 服务接口定义15§2.3接口事件说明16§2.3.1 OnListenning16§2.3.2 O

3、nAccept17§2.3.3 OnReceive17§2.4接口函数说明17§2.4.1 函数说明格式17§2.4.2 数据结构定义17§2.4.3 函数功能介绍17§3 数据应用服务程序40§3.1主要功能40§3.2 Unit应用接口41§3.2.1 Unit功能描述41§3.2.2 Unit接口图示42§3.2.3 Unit接口数据集43§3.2.4 Unit接口属性43§3.2.5 Unit接口方法43§3.2.6 Unit接口事件49§

4、;3.3 Vehicle应用接口49§3.3.1 Vehicle功能描述49§3.3.2 Vehicle接口图示50§3.3.3 Vehicle接口数据集50§3.3.4 Vehicle接口属性51§3.3.5 Vehicle接口方法51§3.3.6 Vehicle接口事件54§3.4 GPS应用接口54§3.4.1 GPS功能描述54§3.4.2 GPS接口图示55§3.4.3 GPS接口数据集55§3.4.4 GPS接口属性56§3.4.5 GPS接口方法56§

5、3.4.6 GPS接口事件58§3.5 TechArchive应用接口58§3.5.1 TechArchive功能描述58§3.5.2 TechArchive接口图示59§3.5.3 TechArchive接口数据集60§3.5.4 TechArchive接口属性60§3.5.5 TechArchive接口方法60§3.5.6 TechArchive接口事件62§3.6 Stat应用接口62§3.6.1 Stat功能描述62§3.6.2 Stat接口图示63§3.6.3 Stat接口数

6、据集63§3.6.4 State接口方法64§4 终端协议应用服务程序64§4.1主要功能65§4.2 Send应用接口65§4.2.1 Send功能描述65§4.2.2 Send接口图示66§4.2.3 Send接口方法67§4.3 Receive应用接口73§4.3.1 Receive功能描述73§4.3.2 Receive接口图示74§4.3.3 Receive私有方法75§4.3.4 Receive私有事件76§5 监控用户/车辆注册管理程序76§

7、5.1主要功能77§5.2功能模块操作流程图77§5.3具体功能描述78§6 车辆GPS监控管理程序78§6.1主要功能:78§6.2功能模块操作流程图78§6.3系统功能部分80操作员登录/重新登录80修改密码:80操作员登录退出:80车辆信息80驾驶员信息80报表输出80报警信息查询80§6.4监控部分:81单次呼叫81多次呼叫81定长呼叫81停止呼叫81调度信息81广播信息81断油断电81恢复断油断电81控制监听82保险提示82大修提示82超速报警82区域报警82偏航报警82疲劳报警82§6.5地图部分:82

8、控制:86查询:87测量:87图层控制88地图打印88看全图88§6.5.7地图鹰眼88自动换图89§6.5.9 GPS定位89历史数据回放91§6.6运政监控功能92车辆GPS信息92车辆调度信息92车辆保险超期信息92车辆维护超期信息92车辆详细技术资料92监控统计报表93车辆定位轨迹信息93§6.7设置功能93系统设置93服务中心设置93短信中心设置93§7 监控服务统计程序93§7.1主要功能93§7.2功能模块操作流程图94§7.3具体功能描述94§7.3.1 系统功能94§7.3.2

9、 用户统计95§7.3.3 车辆统计95§7.3.4 监控统计95第四章 分布式数据库设计95§1 GPS监控中心数据库设计95§1.1 主要内容95§1.2 数据表结构详细说明96§1.2.1 监控用户数据结构96§1.2.2 受监控车辆数据结构97§1.2.3 GPS信息数据结构98§1.2.4 车辆保险信息数据结构99§1.2.5 车辆维护信息数据结构100§1.2.6 车辆技术信息数据结构100§1.2.7 GPS监控费用信息数据结构101§1.3 数据结构

10、关系图102§1.3.1 用户车辆注册业务数据关系102§1.3.2 受监控车辆数据关系102§1.3.3 GPS信息数据关系104§1.3.4 车辆保险信息数据关系105§1.3.5 车辆维护信息数据关系105§1.3.6 车辆技术信息数据关系106§1.3.7 GPS监控费用信息数据关系107§2 运政系统数据库车辆运政资料相关结构107§2.1 主要内容107§2.2 运政系统数据库结构分析108§2.3 运政系统数据库与监控系统数据库数据流向与传输方式描述115§2.

11、4 运政系统数据库与监控系统数据库数据传输方式117§3 GPS监控客户端数据库设计117§3.1 主要内容117§3.2 监控客户端数据库结构分析117§3.3二期开发功能调用及数据流向关系描述117§3.4 监控客户端数据库与服务中心数据库的远程传输方式119§3 业务权限设定119第一章 引言§1 系统详细分析的目的本书将在车辆运政GPS监控系统需求分析基础上,对GPS系统进行详细的程序接口和数据库设计。为系统开发的代码编写阶段作准备。系统详细分析的目的,就是明确目标系统要“怎么做”。§2 系统定义拟分析的系

12、统,中文名全称为“车辆运政GPS监控系统,简称“GPS系统”或“系统”。英文名称为“GPSXT”。这个定义被以下各章节引用。获取车辆GPS信息和运政信息的过程,本书称为监控。短信应用服务程序,本书简称为短信服务端。数据应用服务程序,本书简称为数据服务端。终端协议服务程序,本书简称为终端服务端。车辆GPS监控管理程序,本书简称为监控端。监控用户/车辆注册管理程序,本书简称为注册端。监控服务统计程序,本书简称为统计端。监控网络诊断管理程序,本书简称为诊断端。§3 内容简介本书共分五章。各章主要内容为:第一章:引言。即本章。说明了系统分析的目的,对拟建系统进行定义,各章节内容简介,指出系统

13、分析所参考或引用的相关标准,说明本书的读者对象。第二章:系统环境架构。说明了系统运行和开发需要的计算环境。第三章:分布式程序模块接口。说明各模块的主要功能和模块间相互调用的接口定义。第四章:分布式数据库设计。说明整个数据存储结构的关系分析,即各个数据库的结构讲解。§4 参考资料本书的编写遵循软件工程文档的相关写作规范,所引用的相关标准资料有:1.计算机软件产品开发文件编制指南GB 8567-882.信息处理、数据流程图、程序流程图、系统流程图、程序网络图和系统资源图的文件编辑符号及约定GB 1526-89(ISO5807-85)3.计算机软件分类与代码GB/T 13702-92引用其

14、它相关:§5 读者对象本书读者对象为: GPS系统项目组成员;系统分析小组成员;程序设计组成员;系统测试组成员。第二章 系统环境构架§1运行平台、 操作系统:系统服务端采用Win2000Server操作系统。客户端采用Win98/Win2000Pro操作系统。、 数据库:SQLServer2000。§2开发工具开发工具:Delphi6、Mapx5第三章 分布式程序模块接口§1 程序模块调用和数据传输关系§1.1调用和数据传输关系图§1.2调用和数据传输关系描述§短信服务端短信端口短信端口短信服务端:当短信端口接收到车载终端发

15、到的数据包时,会自动做以下处理:1、对接收到的数据按SMPP(V3.3版)协议进行重打包;2、然后再把重新打包的数据发往短信服务端。短信服务端短信端口:当短信服务端接收到终端服务端发到的数据包后,会自动触发接收事件,在接收事件里,需要做以下处理:1、对接收到的数据按SMPP(V3.3版)协议进行重打包;2、然后再把重新打包的数据发往短信端口。短信端口一旦接收到短信服务端发到的数据包,会及时通过移动短信服务中心自动转发车载终端。§短信服务端终端服务端短信服务端终端服务端:当短信服务端接收到短信端口发到的数据包后,会自动触发接收事件,在接收事件里,需要做以下处理:1、对接收到的数据按SM

16、PP(V3.3版)协议进行解包;2、对解包数据按车载短信协议进行重打包;3、把重打包的数据发往终端服务端。终端服务端短信服务端:监控端通过调用终端服务端的方法,把GPS指令传给终端服务端,终端服务端对GPS指令做以下处理:1、对GPS指令按车载终端协议进行解析;2、对解析后的数据再按车载短信协议进行打包;3、然后再把打包的GPS指令数据发往短信服务端。§终端服务端数据服务端终端服务端数据服务端:当终端服务端接收到短信服务端发到的数据包时,会自动触发接收事件,在接收事件里,需要做以下处理:1、对接收到的数据按车载短信协议进行解包;2、对解包数据按车载终端协议进行解析;3、通过调用数据服

17、务端的方法,把解析后的数据保存到数据仓库。§终端服务端监控端终端服务端监控端:当终端服务端接收到短信服务端发到的数据包时,会自动触发接收事件,在接收事件里,需要做以下处理:1、对接收到的数据按车载短信协议进行解包;2、对解包数据按车载终端协议进行解析;2、对解析后的数据按车载监控协议重新打包;3、把重新打包后的数据发送到监控端。监控端收到发来的数据包时,会自动触发接收事件,在接收事件里,需要做以下处理:1、对接收到的数据按车载监控协议进行解包;2、把解包后的GPS信息显示按类型在用户界面做相应的显示、提示、或做其他自动化的处理。3、把重新打包后的数据发送到监控端。监控端终端服务端:监

18、控端通过调用终端服务端的方法,达到向监控车辆发送监控指令、短信的目的。§数据服务端数据库数据服务端数据库:数据服务端向数据库传送各类数据库DDL语句和SQL语句,数据库根据传送的语句执行查询、增加、删除、修改等数据操作,更新数据、返回需要的数据集。§监控端数据服务端监控端数据服务端:监控端通过调用数据服务端的方法,主要进行以下动作:、 登录操作员验证、权限识别、 获得受监控车辆的基本信息、驾驶员信息、所属单位信息、保险、维护、技术等运政和安全管理信息、GPS监控历史轨迹等。、 设置车辆的保险、维护的提醒参数。、 保存监控车辆的指令、短信发送日志。§注册端数据服务端

19、注册端数据服务端:注册端通过调用数据服务端的方法,主要进行以下动作:、 登录操作员验证、权限识别、 注册、修改、注销、查询监控用户、监控操作员信息,管理操作员权限。、 登记、修改、撤消、查询受监控车辆、驾驶员的基本信息。§统计端数据服务端统计端数据服务端:统计端通过调用数据服务端的方法,主要进行以下动作:、 登录操作员验证、权限识别、 统计监控用户、受监控车辆基本信息、保险、维护、技术等运政和安全管理信息。、 统计受监控车辆的历史诡计、统计各类报警事件等。、 统计监控用户需要的其他与车辆监控相关的各类报表。§1.3数据包传输协议定义§SMPP(V3.3)协议参考文

20、档。§车载短信协议车载短信协议数据包结构Typedef Struct GPSSMSIM String 11字节 Message String可变字节接收的消息内容§车载终端协议参考文档FT天昊无线通讯协议.doc、704 AVLS-50 SMS-DDN修订版.doc。§车载监控协议车载监控协议数据包结构:Typedef Struct GPSWatchSIM String 11字节 VehicleStateint2字节车辆状态(00:未定位;01:定位;02:终端开机;03:终端关机)VehicleStateTextString50字节状态显示文本GPSStatei

21、nt2字节GPS状态(00:无GPS信号;01:定位;02:超速报警;03:手动报警;04:出区域报警;05:进区域报警;06:偏航报警;07:控制指令回复;08:文本信息GPSTimedatetime16字节GPS时间(yyyy-mm-ddhhmmss,例:2003-06-23180721表示2003年6月23日18点7分21秒)RecvTimedatetime16字节接收时间(yyyy-mm-ddhhmmss,例:2003-06-23180721表示2003年6月23日18点7分21秒)Longitudefloat10字节经度Latitudefloat9字节纬度Speedfloat6字节速

22、度(公里/小时,如:123.78)Directionfloat3字节方向(0-360度)ControlCommandint2字节回复控制指令(00:定位;01:短信;03:报警设置;04:区域设置;05:偏航设置)MsgTextString可变字节消息文本)§2 短信应用服务程序程序名定义:bbSMServer.exe§2.1主要功能本章首先简要介绍了短信服务端程序,然后描述了调用接口(API)的设计目标及原则。§2.1.1 系统简介为GPS车辆定位系统实现短信息代理功能,并通过服务可为多个终端服务端调用,自动连接短信中心,并设计有掉线自动重新连接的功能。为GPS

23、车辆定位信息系统提供快速的短信通道,在网关代理软件在吸取了众多网关代理软件的基础上开发了一套而成。该平台的逻辑结构图如下: 本短信服务端(支持连接多个运营商的短信网关,支持smpp,cmpp,sgip等协议)移动短信网关联通短信网关铁通短信网关其他运营商短信网关终端服务端终端服务端其他终端服务端§2.1.2 系统设计原则l 模块化系统的功能设计按流程的要求实行模块化,以利于系统的开发和对系统的理解、使用。l 稳定性性能稳定,能满足大量短信发送要求。l 灵活性系统结构应具有伸缩性,配置灵活。l 实用性系统应处理好网络连接及协议封装,做到与业务无关。§2.1.3 术语说明SP

24、Service Provider,内容提供商SMG Short Message Gateway,联通管理人员的短消息网关,SMG之间的通讯协议采用SGIPSGIP Short Message Gateway Interface Protocol,本协议所描述的短消息网关接口协议,用于完成在SMG和SP之间、SMG和SMG之间短消息的发送、接收和转发功能,以及SMG和GNS之间路由表的同步功能SMSC Short Message Service Center,短消息中心MO 由手机用户提交的短消息MT 由手机用户接收的短消息Deliver SMG用Deliver命令向SP发送MO消息Submit

25、 SP用Submit命令向SMG提交MT消息Report Report命令用于向SP发送一条先前的Submit命令的当前状态,或者用于向前转SMG发送一条先前的Deliver命令的当前状态§2.2系统结构 本章描述了程序设计API内部的结构及应用、开发环境。§2.2.1 结构说明该短信服务端的主要目标是为各GPS应用服务器提供一个开放的连接协议接口,提供短信转发,主要由两部分组成:短消息网关(简称smsgate)和短消息服务接口。短消息网关对外实现各种协议,对内提供统一协议,实现协议转换和存储转发,日志记录,路由分析等。短消息服务是提供GPS应用服务器的一个端口,它本身不提

26、供任何具体短信服务,只对短信息内容提供转发。该平台可支持一个分布式的车辆定位系统,短消息网关提供各个服务器的连接,统一转发,降低了每个GPS服务器单独连接短消息中心的烦琐性,也降低smppgate的复杂性,也提高了可靠性和性能。§2.2.2 系统结构图短消息网关smppsgate界面sgip协议线程cmpp协议线程smpp协议线程短信连接调用模块日志记录短信协议线程(内部协议,接口)操作维护平台短信程序服务接口异步消息队列(对消息排队)消息队列服务接口API接口文件API调用其他§2.2.3 服务接口定义服务接口组成图如下所示。§2.3接口事件说明§2.

27、3.1 OnListenning功能:监听建立连接之前,会触发OnListenning事件。你可以在开始监听之前修改Socket属性。§2.3.2 OnAccept功能:当收到终端服务端的请求,会触发OnAccept事件。§2.3.3 OnReceive功能:当收到终端服务端传来的数据包时,会触发OnReceive事件。§2.4接口函数说明§2.4.1 函数说明格式每个函数按以下顺序进行介绍:【函数功能】:简要介绍函数所实现的功能。【函数句型】:给出该函数的标准C语言原型【参数说明】:给出每个参数的简要说明及输入、输出。【返回值】:给出函数在使用时需要注

28、意的问题。§2.4.2 数据结构定义下面给出函数调用中所用到的参数类型及结构定义,以及调用后返回的数据结构。车载短信协议数据包结构Typedef Struct GPSSMString SIM; /接收到消息的车载通讯号码 String Message; /接收的消息内容§2.4.3 函数功能介绍§2.4.3.1通信服务函数1InitInterface【函数功能】初始化接口,和网关服务程序建立连接,应用程序必须首先调用本函数。【函数句型】Bool InitInterface(string strserverip, string strserverprot)【参数说明

29、】strserverip 类型:string说明:连接网关服务器的IP地址。strserverprot 类型:string说明:连接网关服务器的端口。 【返回值】FALSE表示失败,TRUE表示成功。2Sendmessage【函数功能】向短消息网关发送短信内容。【预置条件】成功调用InitInterface函数。【函数句型】Bool Sendmessage(init sendmsgid, string sendmsglog, out int UnitID)【参数说明】sendmsgid类型:string说明:短信发送目的地地址。sendmsglog类型:string说明:短信发送内容。 【返回

30、值】TRUE表示成功。FALSE表示失败,并回传错误表示代码:1 短信服务器未连接,2 发送目的地地址不合法,3 短信故障。§2.4.3.2初始化与退出函数1. IFInitInterface【函数功能】初始化接口,和信息平台、短讯中心建立连接,应用程序必须首先调用本函数。【函数句型】BOOL WINAPI IFInitInterface(DWORD dwCodeProtocol, DWORD dwDriverProtocol, LPCTSTR pDriverParam); 【参数说明】dwCodeProtocol 类型:DWORD说明:和短讯中心连接的协议类型取值意义1内部协议(保

31、留)2网关协议(保留)3 SMPP协议5 CMPP协议(中国移动的互联互通协议)6 SMGP协议(固网网关协议)dwDriverProtocol 类型:DWORD说明:和短讯中心连接的网络协议取值意义1TCP/IP协议2COM协议(保留)3X25协议(保留)PDriverParam类型;LPCTSTR说明:网络协议参数。字符串,参数之间以空格隔开。例如:TCP/IP协议的参数为“IP地址 端口号 超时时间”(如“”)注:SP在各种协议连接短信服务器使用的端口号:CMPP: 7890; (注意对应的dwCodeProtocol应为5)SMPP: 5018; (注意对应的dwCodeProtoco

32、l应为3,连接短消息中心时端口号为5016.)SMGP: 7118. (注意对应的dwCodeProtocol应为6) 【返回值】FALSE表示失败,TRUE表示成功。 【函数说明】IFInitInterface用于初始化用户接口,定义接口的协议和使用的网络协议。使用该接口时,必须首先调用IFInitInterface,然后才能调用其他函数。当低层链路出现故障后,如果用户没有注册出错处理函数,接口会调用缺省的出错处理函数,杀掉现在的接口,重新连接,建立新接口。如果用户注册了出错处理函数,接口调用用户的回调函数,此时,接口已破坏,用户必须再次调用此函数,重新初始化接口,然后才能成功调用其他函数。

33、此函数在调用时,会杀掉当前的接口,不管当前接口是否出错。如果当前接口已经登录到SMSC,则重新初始化后,会自动调用Login函数,以上次登录的数据自动登录,当调用Logout函数后,上次登录的数据才会丢弃,无效。dwCodeProtocol定义接口的编码协议,即ESME和短消息网关或SMSC之间的接口协议,取值有内部协议、SMPP协议、CMPP协议、SGIP协议、SMGP协议等。其中网关协议是网关和SMSC之间的协议,目前接口不提供。dwDriverProtocol定义网络通讯协议,如常的TCP/IP协议。pDriverParam定义网络协议的连接参数,对于不同的网络协议,参数不同。如果选择的

34、协议是TCP/IP协议,则此参数应是按SMSC的IP地址,dwCodeProtocol定义的协议的端口号,连接超时时间顺序的字符串。其中端口号根据协议、厂家的不同有不同的值.2. IFExitInterface 【函数功能】退出接口,应用程序在退出程序时必须调用此函数。 【函数句型】BOOL WINAPI IFExitInterface(); 【返回值】FALSE表示失败,TRUE表示成功【函数说明】此函数用于退出接口时,删除接口,释放某些接口分配的系统资源。此函数只能在应用程序退出系统时调用,调用后接口以不完整,即使再次调用IFInitInterface后,接口也已不可再用,必须重新加载用户

35、程序,再初始化接口。§2.4.3.3短讯业务函数1. Login_R 【函数功能】用户向短消息服务端注册登录。服务端对用户数据进行校验,如果合法,则登记该用户为合法用户,此后用户即可使用其他短讯业务函数。如果此函数调用不成功,则短讯中心不会处理用户其他有关短讯业务的命令。 【预置条件】成功调用IFInitInterface函数。 【函数句型】BOOL WINAPI Login_R(LPCTSTR SystemID, LPCTSTR Password); 【参数说明】SystemID类型:LPCTSTR,最大长度为15个字符 (如果以CMPP协议登陆,最大长度只支持6个字符)意义:在服

36、务端注册的帐号名。Password类型: LPCTSTR,最大长度为8个字符 (如果以CMPP协议登陆,最大长度支持16个字符)意义;帐号密码。 【返回值】FALSE表示失败, TRUE表示成功。 【函数说明】Login_R函数用于用户接口向信息平台、短讯中心登录。用户必须在初始化接口即成功调用IFInitInterface函数后,有调用Logout后,接口才会废弃登录数据。2. Logout 【函数功能】用户向信息平台、短讯中心注销接口。 【预置条件】成功调用IFInitInterface。成功调用Login_R。 【函数原型】BOOL WINAPI Logout(); 【返回值】FALSE

37、表示失败, TRUE表示失败。 【函数说明】此函数用于向信息平台或SMSC注销接口。注销后,服务端在处理除登录外的其他协议。此外调用此函数后,接口会将上次登录的接口数据,保存在接口中的接口名和密码丢弃。3. SubmitA 和SubmitAExEx、 SubmitAExExEx 【函数功能】向指定的地址发送短讯。 【预置条件】成功调用IFInitInterface。成功调用Login_R。 【函数原型】int WINAPI SubmitA(unsigned char OrgTON, unsigned char OrgNPI, LPCTSTR OrgAddr, unsigned char Des

38、tTON, unsigned char DestNPI, LPCTSTR DestAddr, unsigned char PRI, unsigned char RD, unsigned char RP, unsigned char SRR, unsigned char MR, unsigned char DCS, unsigned char PID, LPCTSTR Schedule, LPCTSTR Expire, unsigned long Default_ID, unsigned char UDHI, unsigned long UDLen, LPCTSTR UserData, unsi

39、gned long* SM_ID, unsigned char* FCS);注:SubmitA主要适用于SMPP协议。intWINAPISubmitAExExunsignedcharOrgTONunsignedcharOrgNPILPCTSTROrgAddrunsignedcharDestTONunsignedcharDestNPILPCTSTRDestAddrunsignedcharPRIunsignedcharRDunsignedcharRPunsignedcharSRRunsignedcharMRunsignedcharDCSunsignedcharPIDLPCTSTRScheduleL

40、PCTSTRExpireunsignedlongDefault_IDunsignedcharUDHIunsignedlongUDLenLPCTSTRUserDataLPCTSTRServiceSubTypeunsignedcharbyMsgIDunsignedcharbyPKTotalunsignedcharbyPKNumberunsignedcharbyMsglevelunsignedcharbyFeeUserTypeLPCTSTRsSPIDLPCTSTRsFeeTypeLPCTSTRsFeeAddrLPCTSTRsFeeCodeunsignedcharbyUserNumLPCTSTRsDe

41、stAddrsunsignedlongSM_IDunsignedcharFCS注:SubmitAExEx主要适用于CMPP协议(移动)。intWINAPISubmitAExExExunsignedcharOrgTONunsignedcharOrgNPILPCTSTROrgAddrunsignedcharDestTONunsignedcharDestNPILPCTSTRDestAddrunsignedcharPRIunsignedcharRDunsignedcharRPunsignedcharSRRunsignedcharMRunsignedcharDCSunsignedcharPIDLPCTS

42、TRScheduleLPCTSTRExpireunsignedlongDefault_IDunsignedcharUDHIunsignedlongUDLenLPCTSTRUserDataLPCTSTRServiceSubTypeunsignedcharbyMsgIDunsignedcharbyPKTotalunsignedcharbyPKNumberunsignedcharbyMsglevelunsignedcharbyFeeUserTypeLPCTSTRsSPIDLPCTSTRsFeeTypeLPCTSTRsFeeAddrLPCTSTRsFeeCodeunsignedcharbyUserNu

43、mLPCTSTRsDestAddrsunsignedlongSM_IDunsignedcharFCSunsignedcharbySmgpMsgIDunsignedcharbyMsgTypeLPCTSTRFixedFee注:SubmitAExExEx主要适用于SMGP协议(固网)。 【参数说明】输入参数:OrgTON类型:unsigned char说明:源地址号码类型取值意义0未知,当用户或网络不含关于编码方案的较早信息1国际号码,2国内号码,不能包含地区和退出数字3网络特殊号码4用户号码5字符数字6缩写号码7保留OrgNPI类型:unsigned char意义:源地址编码方案取值意义0未知,当

44、TON=5时,NPI=01ISDN或电话号码编码方案(E164/E163),对于任意实体SC,MSC或MS,都有效2保留3数据编码方案(X121)4电报编码方案5-7保留8国内编码方案9私有编码方案10ERMES编码方案(ETSI DE/PS 3 01-3)11-15保留OrgAddr类型:LPCTSTR 最大长度为20个ASC字符意义:源地址DestTON类型:unsigned char意义:目标地址号码类型。取值同OrgTON。DestNPI类型:unsigned char意义:目标地址编码方案。取值同OrgNPI。DestAddr类型:LPCTSTR 最大长度为20个ASC字符意义:目标

45、地址PRI类型:unsigned char意义:SM优先级取值意义1优先级别0缺省级别RD类型:unsigned char意义:保留,设置为0。RP类型:unsigned char意义:回应路径,保留,设置为0。SRR类型:unsigned char意义:状态报告,保留,设置为。MR类型:unsigned char意义:消息索引,保留,设置为0。DCS类型:unsigned char意义:数据编码方案取值意义0缺省编码方案(7位)4二进制编码方案(不被手机支持)8 UCS2编码方案15 GBK编码其他保留PID类型:unsigned char意义:协议类型,缺省为0。Schedule类型:LP

46、CTSTR 长度为19个ASC字符的字符串意义:定时时间注意:时间格式必须为“yyyy/mm/dd hh:mm:ss”。Expire类型:LPCTSTR 长度为19个ASC字符的字符串意义:超时时间注意:时间格式必须为“yyyy/mm/dd hh:mm:ss”。Default_ID类型:unsigned long注意:国标定义的缺省短消息的个数为100条。UDHI类型:unsigned char。意义:用于长短消息,表示UserData是否是结构取值意义0UD是正常字符串1UD是结构UDLen类型:unsigned long意义:表示UserData的长度,UDLen要注意的事项如下,如果对于

47、UDHI设置为1的短消息,则此项表示UserData的字符个数(字符个数和字节个数不同,对于7比特编码格式,字符是7比特的,字节是8比特的。其他编码方式则字符的大小和字节的大小相同)UserData类型;LPCTSTR意义:用户信息,短消息正文。对于正常短消息,该字段的最大长度和编码方式有关,对于7比特编码方式(缺省的编码方式)为160个字符的ASC字符串,如果为8比特编码方式则为140个8比特字节流,如果为UCS2编码方式,则为70个字符的16比特字符串。此外对于UDHI设置为1的短消息,表示此字段已经经过编码,所以不论是什么编码方式,此字段的最大长度为140字节。如果传输是图片铃声则要求U

48、DHI的值为1、DCS值为4。而且对不同的品牌的手机,DCS值可能有变化。输出参数:SM_ID类型:unsigned long*意义:返回短消息IDFCS类型:unsigned char*意义:返回SC端失败原因SubmitAExEx函数部分的参数说明:(以下为CMPP新增字段)sServiceType 类型:LPCTSTR 意义:业务子类型,通过此值来判断计费byPKTotal 类型:unsigned char 意义:相同Msg_id的消息总条数,从1开始byPKNumber 类型:unsigned char 意义:相同Msg_id的消息序号,从1开始byMsglevel 类型:unsign

49、ed char 意义:信息级别byFeeUserType 类型:unsigned char 意义:计费用户类型字段:0:对目的终端MSISDN计费;1:对源终端MSISDN计费;2:对SP计费;3:表示本字段无效 sSPID 类型:LPCTSTR ,6个ASC字符串 意义:信息内容来源(SP_ID) sFeeType 类型:LPCTSTR,2个ASC字符串 意义:资费类别 00 “短消息类型”为“发送”,对“计费用户号码”不计信息费, 此类话单仅用于核减SP对称的信道费 01 对“计费用户号码”免费 02 对“计费用户号码”按条计信息费 03 对“计费用户号码”按包月收取信息费 04 对“计费

50、用户号码”的信息费封顶 05 对“计费用户号码”的收费是由SP实现sFeeAddr 类型:LPCTSTR,长度为20个ASC的字符串 意义:被计费用户的号码(如本字节填空,则表示本字段无效,对 谁计费参见byFeeUserType字段。本字段与byFeeUserType字段互斥)sFeeCode 类型:LPCTSTR,6个ASC字符byUserNum 类型:unsigned char 意义:接收消息的用户数量sDestAddrs 类型:LPCTSTR,21* byUserNum个ASC字符串 意义:接收业务的MSISDN号码,最多100个MSISDN号码。MsgID 类型:unsigned c

51、har* (输出参数)意义:返回ACK应答消息的MsgID。信息标识,由SP侧短信网关本身产生: SubmitAExExEx函数新增的参数说明: BySmgpMsgID 类型:unsign char指针。 意义:网关产生的消息流水号。 ByMsgType 类型:unsign char 指针。 意义:短消息类型 1:取消订阅 2:订阅请求 3:点播 4:订阅 5:交互式操作 6:查询 FixedFee 类型: Char*字符串长指针。 意义:包月费、封顶费。单位分。 【返回值】函数返回值定义参见附录。 【函数说明】此函数封装了SUBMIT_SM协议,实现ESME向信息平台或SMSC提交短消息。将

52、SUBMIT_SM协议的各项以参数的形式提供。手机的地址由参数TON(OrgTON或DestTON),参数NPI(OrgNPI或DestNPI)和参数Addr(OrgAddr或DestAddr)确定。如果地址是手机的号码,则NPI必须取1。当NPI取1后,TON可取相应的值,对于国际编码,即手机号码加了“86”,NPI可取1;对于国内编码,不加“86”,NPI应取2。 对于参数编码方案DCS,建议短消息内容为英文ASC码,可取0。对于中文短消息,DCS必须取8,表示UNICODE,否则会出现乱码。对于图片、铃声此值一般设为4,但是对于不同品牌的手机,此值又有不同。参数Schedule用于定时短消息,即指定短消息发送的时间,当时间到达指定的时间后,SMSC才会下发。参数Expire用于指定该提交短消息的生存期,即超时时间。生存期是指当某条短消息在SMSC中存在的时间,当生存期结束后,短消息会被写入数据库中。生存期结束有多种原因,例如:短消息下发成功;短消息一直未下发成功,但超时时间已到;下发时遇永久性失败等。SM

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论