Login
升级VIP 登录 注册 安全退出
当前位置: 首页 > word文档 > 合同模板 > 中国联通短消息网关接口(SGIP)协议

中国联通短消息网关接口(SGIP)协议

收藏

本作品内容为中国联通短消息网关接口(SGIP)协议,格式为 doc ,大小 1974272 KB ,页数为 59页

中国联通短消息网关接口(SGIP)协议


('QB/CU25-2003中国联通短消息网关联网协议(SGIPV1.0)中国联通公司2003年2月发布前言近年来,短消息业务发展迅速。目前联通大部分分公司已经设立短消息中心并已投入使用,但由于缺少业务种类,加上联通总部对此缺乏统一规划,长期以来经济效益不明显,增值业务开展较少;现有的网络架构、人员、管理、技术等资源在支持短消息数据业务快速发展以形成规模效益及在新的技术平台上开展无线数据业务等方面已成为主要瓶颈。为了统一短消息业务应用提供商(SP)的接入,大力发展中国联通短消息服务,联通公司以现有短消息网络资源为基础构建短消息网关系统,对所有SP的接入接口、短消息网关之间的接口等进行统一的规范。本协议主要是参考了国际上相关技术规定以及我国移动通信网络的实际业务和功能需要而制订的。主要内容包括:系统体系结构,通信流程,消息定义,常量定义等。写在前面:为了方便大家下载,特共享在这里!本规范由中国联合通信有限公司技术部提出并归口本规范起草单位:中讯邮电咨询设计院本规范主要起草人:张范李海燕康建雄左丽李明铎张岩许建宏本规范的修改和解释权属于中国联通公司目录1.总则..................................................................12.系统体系结构........................................................22.1消息从本地SMSC到本地SP........................................32.2消息从本地SP到本地SMSC........................................32.3消息从本地SMSC到异地SP........................................32.4消息从本地SP到异地SMSC........................................32.5路由选择...................................................................43.通信流程.............................................................53.1专用SGIP方式.............................................................53.2通用HTTP方式.............................................................53.3通信节点编号规则.........................................................63.4序列号的定义................................................................63.5通信的安全性................................................................73.6用户鉴权......................................................................73.6.1被叫方付费.............................................................73.6.2SP付费...................................................................73.6.3第三方付费.............................................................83.7SP与SMG的通信.........................................................83.7.1通用HTTP方式.......................................................83.7.1.1从SP到SMG的命令..........................................93.7.1.2从SMG到SP的命令..........................................93.7.2专用SGIP方式........................................................93.7.2.1通信初始化.....................................................103.7.2.2通信过程........................................................103.7.2.3通信结束........................................................113.7.2.4故障处理........................................................123.7.2.5从SP到SMG的消息........................................133.7.2.6从SMG到SP的消息........................................133.8SMG与SMG之间的通信.............................................133.8.1通信初始化...........................................................143.8.2通信过程..............................................................143.8.3通信结束..............................................................143.8.4故障处理..............................................................143.8.5两个SMG之间的消息............................................143.9SMG与GNS之间的通信.............................................153.9.1通信初始化...........................................................153.9.2通信过程..............................................................153.9.3通信结束..............................................................153.9.4故障处理..............................................................15i3.9.5从SMG到GNS的消息...........................................163.9.6从GNS到SMG的消息...........................................164.消息定义...........................................................174.1基于通用HTTP的消息定义...........................................174.1.1Submit操作.........................................................174.1.1.1Submit命令的请求内容....................................174.1.1.2Submit命令的应答内容....................................184.1.2Deliver操作.........................................................194.1.2.1Deliver命令的请求内容....................................194.1.2.2Deliver命令的应答内容....................................194.1.3Report操作..........................................................204.1.3.1Report命令的请求内容.....................................204.1.3.2Report命令的应答内容.....................................204.1.4UserRpt操作........................................................204.1.4.1UserRpt命令的请求内容..................................214.1.4.2UserRpt命令的应答内容..................................214.1.5Trace操作............................................................214.1.5.1Trace命令的请求内容.......................................214.1.5.2Trace命令的应答内容.......................................214.2基于专用SGIP的消息定义............................................224.2.1数据类型..............................................................224.2.2消息头的格式........................................................224.2.3消息体的格式........................................................234.2.3.1Bind操作........................................................234.2.3.2Unbind操作....................................................244.2.3.3Submit操作....................................................244.2.3.4Deliver操作....................................................264.2.3.5Report操作....................................................274.2.3.6AddSP操作.....................................................284.2.3.7ModifySP操作................................................284.2.3.8DeleteSP操作.................................................294.2.3.9QueryRoute操作............................................304.2.3.10AddTeleSeg操作...........................................314.2.3.11ModifyTeleSeg操作......................................314.2.3.12DeleteTeleSeg操作......................................324.2.3.13AddSMG操作................................................334.2.3.14ModifySMG操作...........................................334.2.3.15DeleteSMG操作...........................................344.3鉴权消息定义..............................................................344.3.1CheckUser命令的语法..........................................354.3.2CheckUser_Resp应答的语法.................................354.3.3UserRpt命令的语法..............................................35ii4.3.4UserRpt_Resp应答的语法.....................................354.4测试消息定义..............................................................354.4.1Trace命令的语法..................................................364.4.2Trace_Resp应答的语法.........................................365.常量定义...........................................................375.1消息ID定义...............................................................375.2错误码定义.................................................................375.3计费类别定义..............................................................385.4REPORT状态与短消息状态的映射...................................38附录1缩略语.........................................................39附录2全网路由表的格式示范......................................40附录3本地路由表的格式示范......................................41附录4HTTP承载方式示范........................................42附录5引用标准.................................................................44iii1.总则本协议是SMG和SP之间、SMG和GNS之间、以及SMG和SMG之间的接口协议,简称SGIP。通过应用SGIP协议,SP可以接入到SMG,实现SP应用的一点接入、全网服务;SMG可以通过SGIP协议,实现消息在不同SMG之间的路由和转发。同时,SMG通过该协议也可以和GNS通信,以实现各SMG和GNS之间路由表的同步功能。本协议适用于各SP厂商和SMG的开发厂商。12.系统体系结构SMG是具有短消息转发功能的短消息网关。全国可以有多个SMG网关,SMG网关之间通过互联网等方式实现网络互联。每一个SMG同时与多个SMSC以及多个SP连接。全网具有唯一有效的GNS,GNS负责全局路由表的维护与更新;为了确保路由表存储的安全性,网络中设置主备用GNS,两个GNS要保持一致性。每一个SMG都和GNS连接。SMG与SP、SMG与GNS以及SMG与SMG之间的通信协议为SGIP协议。SMG与SMSC之间的通信统一采用SMPP3.3协议。图2-1说明了系统的体系结构。图2-1SMG的体系结构和SMG平台之间相连的SMSC称作本地SMSC,和异地SMG平台相连的SMSC称作异地SMSC。和SMG平台之间相连的SP称作本地SP,和异地SMG平台相连的SP称作异地SP。从本地SMSC向本地SP以及从本地SP向本地SMSC发送的消息直接由SMG转发;从本地SMSC向异地SP以及从本地SP向2异地SMSC发送的消息由本地SMG路由到异地SMG后,再由异地SMG转发。2.1消息从本地SMSC到本地SPSMG从SMSC接收到短消息,直接发给SP。比如SMSC1A—〉SMG1—〉SP1YSMSC1B—〉SMG1—〉SP1X2.2消息从本地SP到本地SMSCSMG从SP接收短消息,直接发给SMSC。比如SP1X—〉SMG1—〉SMSC1ASP1Y—〉SMG1—〉SMSC1B2.3消息从本地SMSC到异地SPSMG从本地SMSC接收短消息,再路由到异地SMG,由异地的SMG发送到目的SP,比如SMSC1A—〉SMG1—〉SMG2—〉SP2YSMSC1B—〉SMG1—〉SMG3—〉SP3X2.4消息从本地SP到异地SMSCSMG从本地SP接收短消息,再路由到异地SMG,由异地的SMG发送到目的SMSC,比如3SP1X—〉SMG1—〉SMG2—〉SMSC2ASP1Y—〉SMG1—〉SMG3—〉SMSC3B2.5路由选择当消息在本地SMSC和异地SP,或者在本地SP和异地SMSC之间传输时,发送方必须要获取消息接收方的位置信息。这部分功能称为路由选择。对于MO方向的命令(即命令接收方为SP),其路由根据命令中的SP接入号码来选择。对于MT方向的命令(即接收方为用户手机),其路由根据命令中的付费号码和用户号码来综合判断。如果付费号码为空,或付费号码为SP接入号码,则根据用户号码来选择路由;否则根据付费号码所代表的手机号码来选择路由(这样做是考虑到了系统计费和用户鉴权的可行性,关于计费和用户鉴权的细节,请参见其它文档)。由于SMG网关之间采用网状互联,网关之间不可能出现二次前转,因此接收前转消息的网关必须能判断前转的消息目的地址是否是本网关覆盖范围的用户,若不是,必须发送出错信息到前转网关。43.通信流程SGIP有两种具体实现方式,一种是采用专用SGIP方式,另一种是采用通用HTTP方式。SMG和GNS、以及SMG和SMG之间采用专用SGIP方式作为承载协议;而SP和SMG的通信同时支持专用SGIP方式和通用HTTP方式两种承载协议。3.1专用SGIP方式采用专用SGIP方式承载时,通信双方互为客户端和服务器端。当客户端要发送命令时,主动向服务器端建立连接,然后向服务器端发送命令,并接收应答;服务器端从客户端接收命令,返回应答。连接建立以后,客户端可以连续发送多条命令。命令发送完并接收到所有应答后,客户端应该主动断开连接。但是,命令及其应答之间的时间间隔最大不能超过30秒(默认,可配置)(如果命令应答时间超过最大等待时间,则要求客户端重发该条命令,重发机制参见业务联网规范有关内容),且待应答的命令不得超过32条(可以根据线路的质量和服务器的处理能力配置)。而且,如果服务器端检测出一条连接长时间空闲(默认60秒,可配置),可以主动断开该连接。如果需要,客户端可以同时向一个服务器端建立多个连接(SMG与单个其他SMG最多不能建立超过15个连接,对与之相连的单个SP的最大连接数视具体情况而定)。采用专用SGIP承载方式时,SMG和SMG、SP和SMG之间使用的端口号是8801,GNS监听SMG的端口号为8802,SMG监听GNS的端口号为8803,主GNS和备用GNS之间的端口号为8804,SMG之间的测试用端口号为8810。53.2通用HTTP方式HTTP承载方式只适用于SP和SMG的通信中。与SP与SMG之间的专用SGIP承载方式不同的是,该种方式一次连接仅仅传送一条命令,而且连接的认证采用HTTP的URL的授权认证的方式,不需要专门的连接认证的命令,使用的端口号是80。3.3通信节点编号规则在整个网关系统中,所有的通信节点(SMG、GNS、SP和SMSC)都有一个唯一的数字编号,不同的SP或SMSC或SMG或GNS编号不能相同,编号由系统管理人员负责分配。编号规则如下:SMG的编号规则:1AAAAXSMSC的编号规则:2AAAAXSP的编号规则:3AAAAQQQQQGNS的编号规则:4AAAAX其中,AAAA表示四位长途区号(不足四位的长途区号,左对齐,右补零),X表示1位序号,QQQQQ表示5位企业代码。3.4序列号的定义短消息网关系统之中传输的每一条命令都有一个序列号,序列号由命令源节点产生并唯一标记一条命令;也就是说,网关系统中任何两个命令的序列号都不相同。需要注意的是,一条命令在发送过程中转发的不同副本视为一条命令,使用相同的序列号。比如,SP1X向SMSC2A发送一条命令,该命令需经过多次转发才能到6达SMSC2A,而转发该命令的每一次通信过程中使用的命令的序号均相同,为SP1X与SMG1通信所使用的序列号。对于MO短消息,例如SMSC1B向SP3X发送一条命令,短消息首先采用SMPP协议发送到SMG1,经过SMG1转发时序列号必须由SMG1重新生成(此时命令源节点为SMG1)。序列号分成三部分,每部分为一个32位整数,第一部分表示命令源节点的编号,第二部分表示命令产生的日期和时间(网关系统中的任何命令的保存时间都不应该超过一年),格式为十进制的mmddhhmmss,比如11月20日20时32分25秒产生的命令,其第二部分为十进制1120203225;第三部分由0开始,循环进位,直到进位满了之后再清零,重新开始计数。接收方在返回应答时,应答的序列号必须和相对应的命令的序列号相同。图3-1命令序列号格式举例3.5通信的安全性SP与SMG、SMG与SMG以及SMG与GNS之间采用专用SGIP方式通信时可采用对称加密方式。SP与SMG之间采用通用HTTP方式时,可采用HTTPS方式加密。73.6用户鉴权当一条MT短消息需要处理时,终点SMG必须保证该短消息的付费方有资格享用该服务(比如付费用户不欠费)。根据短消息服务类型的不同,可以将付费方式分成三类:被叫方付费、SP付费和第三方付费。3.6.1被叫方付费目前的短消息中心都具有对被叫用户鉴权的功能,所以对由被叫方付费的MT短消息,SMG不作鉴权检查,直接转发至SMSC;如果被叫方鉴权失败,SMSC会通过反馈通知SMG。3.6.2SP付费当MT短消息是由SP付费时(如SP发送广告),SMG不作鉴权检查。3.6.3第三方付费当MT短消息是由第三方付费(如手机用户A通过SP给手机用户B点歌,并由手机用户A付费)时,应该对付费方进行鉴权。这种情况下,该MT短消息应该从付费方归属地的短消息中心发送,并且由付费方归属地的计费中心完成鉴权操作。如果计费中心鉴权成功,SMG即将该MT短消息发送至SMSC,否则SMG不再发送该短消息,并根据SP的要求决定是否返回Report命令通知SP发送失败的原因。SMG和计费中心通过TCP/IP通信实现鉴权功能。计费中心为服务器端,SMG为客户端。一次鉴权过程完成对一个手机号码的鉴权。鉴权步骤如下:1.SMG和计费中心建立TCP/IP连接;2.SMG向计费中心发送鉴权命令;3.SMG从计费中心接收鉴权应答;84.SMG和计费中心断开连接;消息描述CheckUserSMG向计费中心请求对一个手机号码鉴权CheckUser_Resp计费中心向SMG返回的一个手机号码的鉴权结果表3-1SMG和计费中心的鉴权消息3.7SP与SMG的通信SP和SMG支持两种类型的通信承载方式:通用HTTP承载方式和通用SGIP承载方式。3.7.1通用HTTP方式SP和SMG之间采用通用HTTP方式通信时,SP和SMG互为HTTP的客户端和服务器端。HTTP服务器端对相关的URL进行保护,HTTP客户端必须采用授权方式访问这些URL。HTTP的特点决定客户端和服务器端的每一次通信都必须一次完成授权连接、发送请求、接收应答、关闭连接等过程(HTTP承载方式不再需要专门的连接命令)。对于MO方向的命令(即命令接收方为SP),由SMG通过POST方式提交给SP进行处理,SP将处理结果以及MT方向信息在HTTP应答中返回给SMG;对于SP主动向用户发送信息的PUSH业务,由SP作为客户端将信息通过POST方式提交给SMG进行处理,SMG在应答中确认信息发送成功与否。因为HTTP服务器对URL进行了授权保护,所以HTTP客户端必须在每次请求中都带上授权信息。HTTP客户端的一个请求只能携带一条命令。SP与SMG之间发送的任何一条命令都带有一个序列号,序列号由命令源产生,任何两条命令的序列号不能重复。如果HTTP服务器接收到的HTTP请求内容的格式不完整或不9正确,HTTP服务器应该返回错误码。HTTP承载方式支持的HTTP协议为1.0版。HTTP承载方式使用如下命令:3.7.1.1从SP到SMG的命令消息描述SubmitSP用该消息向SMG请求向某一个短消息用户发送短消息TraceSP用该消息向SMG请求跟踪某一条MT短消息的状态表3-2从SP到SMG的命令3.7.1.2从SMG到SP的命令消息描述DeliverSMG发送一条短消息到SPReportSMG用该命令通知SP一条Submit命令所发送的MT当前结果UserRptSMG用该命令报告SP一条手机用户的状态表3-3从SMG到SP的命令3.7.2专用SGIP方式SP和SMG之间的通信由客户端向服务器端发起连接。连接建立以后,由客户端向服务器端发送命令,服务器端必须对接收到的每一条命令返回一条应答消息。SP和SMG互为客户端和服务器端。3.7.2.1通信初始化客户端有命令要向服务器端发送时,由客户端首先通过Bind命令向服务器端发起连接。服务器端根据Bind命令之中的登录名和密码,对客户端的合法性进行验证,然后返回一条Bind_Resp应答给客户端。如果验证通过,则客户端和服务器端的通信开始,否10则中断连接。3.7.2.2通信过程SP与SMG之间发送的任何一条命令都带有一个序列号,序列号由命令源产生。客户端与服务器端通信开始以后,客户端可以向服务器端发送相应的命令,服务器端对收到的命令返回应答。图3-2SP和SMG的通信消息样例(SP为客户端)图3-3SP和SMG的通信消息样例(SMG为客户端)命令在SP和SMSC之间的传输是采用类似接力的方式,每条11命令和对应的应答仅仅表示该次命令发送的结果是否正确。比如,SP向某一个手机发送一条短消息,是通过向本地SMG发送一条Submit命令实现的,随后,SP会从SMG接收到一条Submit_Resp应答。但是,即使应答表示Submit命令已正确接收,也不表示Submit命令内的短消息已经发送到手机上了,而仅仅表示该短消息已经传送到SMG,SMG将会作下一步处理,或者发送给SMSC,或者路由到另外的SMG,最终由目的SMSC发送到手机上。这中间任何一个环节出现错误,系统会终止信息的继续发送,并且通过向原SP发送Report命令告诉发送出错的原因(如果SP指定要求反馈的话)。3.7.2.3通信结束如果客户端认为和服务器端的通信已结束,则客户端应该向服务器端发送Unbind命令,服务器端随后返回Unbind_Resp应答,然后双方断开连接。3.7.2.4故障处理发生故障时,SP、SMG以及GNS节点应通过Report命令和其它相关命令的应答相结合返回故障原因;如果MO不成功,该用户所属的SMG还应向用户终端返回友好的应答信息说明不成功原因。3.7.2.4.1网络故障客户端与服务器端的通信过程中如果检测到双方连接中断(如网络断线),客户端应该断开连接,然后尝试重新向服务器端建立新12的连接;服务器端应该按照接收到Unbind的情况进行处理,断开和客户端的连接。3.7.2.4.2接收到非法命令或应答如果服务器端接收到的命令语法错误,比如命令不完整、命令无法识别等,则断开和客户端的连接;客户端应该向服务器端建立新连接继续发送命令。如果客户端接收到的应答语法错误,比如命令不完整、命令无法识别等,则主动断开和服务器端的连接;服务器端也应该断开和客户端的连接。如果命令语法正确,但服务器端不处理该命令,比如SP为服务器端时收到Submit命令,则返回相应应答,并在应答中指定错误原因。如果应答语法正确,但客户端不处理该应答,比如SP为客户端时收到Deliver_Resp应答,则丢弃。3.7.2.4.3序列号重复如果命令的序列号和以前接收到的命令的序列号相同,且命令内容也相同,则接收方丢弃该命令;如果序列号相同,但是命令内容并不相同,则命令接收方在应答中返回错误码。3.7.2.5从SP到SMG的消息消息适用方式描述BindSP为客户端SP用该消息向SMG发出建立连接的请求Bind_RespSP为服务器SP对Bind命令的应答13消息适用方式描述UnbindSP为客户端SP用该消息向SMG通知将要断开现有的连接Unbind_RespSP为服务器SP对Unbind命令的应答SubmitSP为客户端SP用该消息向SMG请求发送短消息Deliver_RespSP为服务器端SP用该消息对从SMG接收到的Deliver命令作出应答Report_RespSP为服务器SP对从SMG接收到的Report命令作出应答UserRpt_RespSP为服务器SP对从SMG接收到的UserRpt命令作出应答TraceSP为客户端SP用该消息向SMG请求跟踪某一条MT短消息的状态表3-4从SP到SMG的消息3.7.2.6从SMG到SP的消息消息适用方式描述BindSMG为客户端SMG用该消息向SP发出建立连接的请求Bind_RespSMG为服务器端SMG对Bind命令的应答UnbindSMG为客户端SMG用该消息向SP通知将要断开现有的连接Unbind_RespSMG为服务器端SMG对Unbind命令的应答Submit_RespSMG为服务器端SMG对Submit命令的应答DeliverSMG为客户端SMG发送一条短消息到SPReportSMG为客户端SMG用该命令通知SP一条Submit命令所发送的MT当前结果UserRptSMG为客户端SMG用该命令通知SP一条手机用户的状态信息Trace_RespSMG为客户端SMG对Trace命令的应答表3-5从SMG到SP的消息143.8SMG与SMG之间的通信在网关系统之中,任何两个SMG之间都要建立一对基于TCP/IP的连接,以实现命令的路由。两个SMG互为客户端和服务器端,客户端向服务器端发送命令,接收应答;服务器端从客户端接收命令,返回应答。图3-4SMG之间的通信消息样例3.8.1通信初始化SMG与SMG通信时,由客户端首先通过Bind命令向服务器端发起连接。服务器端根据Bind命令之中的登录名和密码,对客户端的合法性进行验证,然后返回一条Bind_Resp应答给客户端。如果验证通过,则客户端和服务器端的通信开始,否则中断连接。3.8.2通信过程两个SMG之间的通信和SP和SMG之间的基于TCP/IP的承载方式的通信方式相同。3.8.3通信结束如果客户端认为和服务器端的通信已结束,则客户端应该向服务器端发送Unbind命令,服务器端随后返回Unbind_Resp应答,15然后双方断开连接。3.8.4故障处理SMG之间的故障处理和SP与SMG之间的故障处理相同。3.8.5两个SMG之间的消息消息描述Bind客户端向服务器端请求连接Bind_Resp服务器端对接收到的Bind命令的响应Unbind客户端向服务器端通知断开当前的连接Unbind_Resp服务器端对接收到的Unbind命令的响应Submit客户端向服务器端发送一条MT短消息Submit_Resp服务器端向从客户端接收到的Submit命令发送的应答消息Deliver客户端向服务器端发送一条MO短消息Deliver_Resp服务器端向从客户端接收到的Deliver命令发送的应答消息Report客户端向服务器端发送一条MT或MO的发送结果Report_Resp服务器端向从客户端接收到的Report命令发送应答消息UserRpt客户端向服务器端发送一条手机用户的状态信息UserRpt_Resp服务器端向从客户端接收到的UserRpt命令发送应答消息Trace客户端向服务器端发送请求跟踪某一条MT短消息状态的信息Trace_Resp服务器端向从客户端接收到的Trace命令发送应答消息表3-6SMG之间的消息3.9SMG与GNS之间的通信在网关系统之中,任何一个SMG都要和GNS以互为客户端/服务器的方式建立连接来完成路由表的更新和维护。当SMG对本地的路由表作修改后,需要主动以客户端的身份向GNS建立连接,通知GNS更新路由表;当GNS修改了路由表后,需要主动以客户端的身份向所有的SMG建立连接,通知SMG更新路由表。3.9.1通信初始化SMG与GNS通信时,由客户端首先通过Bind命令向服务器端发起连接。服务器端根据Bind命令之中的登录名和密码,对客户16端的合法性进行验证,然后返回一条Bind_Resp应答给客户端。如果验证通过,则客户端和服务器端的通信开始,否则中断连接。3.9.2通信过程客户端和服务器端建立连接以后,客户端向服务器端发送命令,服务器端则返回应答。3.9.3通信结束如果客户端认为和服务器端的通信已结束,则客户端应该向服务器端发送Unbind命令,服务器端随后返回Unbind_Resp应答,然后双方断开连接。3.9.4故障处理SMG和GNS的故障处理和SP与SMG之间的故障处理相同。3.9.5从SMG到GNS的消息消息适用方式描述BindSMG为客户端SMG向GNS端请求连接Bind_RespSMG为服务器端SMG对Bind命令的应答UnbindSMG为客户端SMG向GNS端通知断开当前的连接Unbind_RespSMG为服务器端SMG对Unbind命令的应答AddSPSMG为客户端SMG通知GNS添加了一个SPAddSP_RespSMG为服务器端SMG对AddSP命令的应答ModifySPSMG为客户端SMG通知GNS修改了一个SPModifySP_RespSMG为服务器端SMG对ModifySP命令的应答DeleteSPSMG为客户端SMG通知GNS删除了一个SPDeleteSP_RespSMG为服务器端SMG对DeleteSP命令的应答AddTeleSegSMG为客户端SMG通知GNS添加了一个号码段AddTeleSeg_RespSMG为服务器端SMG对AddTeleSeg命令的应答ModifyTeleSegSMG为客户端SMG通知GNS修改了一个号码段ModifyTeleSeg_RespSMG为服务器端SMG对ModifyTeleSeg命令的应答DeleteTeleSegSMG为客户端SMG通知GNS删除了一个号码段DeleteTeleSeg_RespSMG为服务器端SMG对DeleteTeleSeg命令的应答QueryRouteSMG为客户端SMG向GNS请求一个手机号或接入号码的路由信息,或全部路由表信息QueryRoute_RespSMG为服务器端SMG对QueryRoute命令的应答表3-7从SMG到GNS的消息173.9.6从GNS到SMG的消息消息适用方式描述BindGNS为客户端GNS向SMG端请求连接Bind_RespGNS为服务器端GNS对Bind命令的应答UnbindGNS为客户端GNS向SMG端通知断开当前的连接Unbind_RespGNS为服务器端GNS对Unbind命令的应答AddSPGNS为客户端GNS通知SMG添加了一个SPAddSP_RespGNS为服务器端GNS对AddSP命令的应答ModifySPGNS为客户端GNS通知SMG修改了一个SPModifySP_RespGNS为服务器端GNS对ModifySP命令的应答DeleteSPGNS为客户端GNS通知SMG删除了一个SPDeleteSP_RespGNS为服务器端GNS对DeleteSP命令的应答AddTeleSegGNS为客户端GNS通知SMG添加了一个号码段AddTeleSeg_RespGNS为服务器端GNS对AddTeleSeg命令的应答ModifyTeleSegGNS为客户端GNS通知SMG修改了一个号码段ModifyTeleSeg_RespGNS为服务器端GNS对ModifyTeleSeg命令的应答DeleteTeleSegGNS为客户端GNS通知SMG删除了一个号码段DeleteTeleSeg_RespGNS为服务器端GNS对DeleteTeleSeg命令的应答AddSMGGNS为客户端GNS通知SMG添加了一个SMGAddSMG_RespGNS为服务器端GNS对AddSMG命令的应答ModifySMGGNS为客户端GNS通知SMG修改了一个SMGModifySMG_RespGNS为服务器端GNS对ModifySMG命令的应答DeleteSMGGNS为客户端GNS通知SMG删除了一个SMGDeleteSMG_RespGNS为服务器端GNS对DeleteSMG命令的应答表3-8从GNS到SMG的消息184.消息定义系统中的消息分三种:基于HTTP的消息、基于TCP/IP的消息和鉴权消息,系统中每个消息包最大不超过2K字节。4.1基于通用HTTP的消息定义HTTP客户端采用POST方法向服务器端发送请求,服务器端返回应答。HTTP请求和响应的格式如下(请参照附录4):格式说明<参数1名称>=<参数1值><参数2名称>=<参数2值><参数3名称>=<参数3值>...HTTP协议头和内容之间必须有一个空行如果HTTP通信出错(比如所请求的URL不存在),则没有内容部分每个参数占一行,所有的参数名称和参数值都为文本类型每行都要以回车/换行结束表4-1HTTP的消息格式4.1.1Submit操作在SP和SMG的通信中,SP用Submit命令向SMG提交MT短消息,SMG返回响应。4.1.1.1Submit命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SPNumberSP的接入号码,字符19参数名称说明ChargeNumber付费号码,字符,手机号码前加“86”国别标志;当且仅当群发且对用户收费时为空;如果为空,则该条短消息产生的费用由UserNumber代表的用户支付;如果为全零字符串“000000000000000000000”,表示该条短消息产生的费用由SP支付。UserNumber一个或多个接收该短消息的手机号,手机号之间用逗号(,)隔开,字符,手机号码前加“86”国别标志,如8613001125453,8613001132345CorpId企业代码,取值范围0-99999,字符ServiceType业务代码,由SP定义,字符FeeType计费类型,字符FeeValue取值范围0-99999,该条短消息的收费值,单位为分,由SP定义,字符对于包月制收费的用户,该值为月租费的值GivenValue取值范围0-99999,赠送用户的话费,单位为分,由SP定义,特指由SP向用户发送广告时的赠送话费,字符AgentFlag代收费标志,0:应收;1:实收,字符MorelatetoMTFlag引起MT消息的原因0-MO点播引起的第一条MT消息;1-MO点播引起的非第一条MT消息;2-非MO点播引起的MT消息;3-系统反馈引起的MT消息。字符Priority优先级0-9从低到高,默认为0,十六进制数字ExpireTime短消息寿命的终止时间,如果为空,表示使用短消息中心的缺省值。时间内容为16个字符,格式为“yymmddhhmmsstnnp”,其中“tnnp”取固定值“032+”,即默认系统为北京时间ScheduleTime短消息定时发送的时间,如果为空,表示立刻发送该短消息。时间内容为16个字符,格式为“yymmddhhmmsstnnp”,其中“tnnp”取固定值“032+”,即默认系统为北京时间20参数名称说明ReportFlag状态报告标记0-该条消息只有最后出错时要返回状态报告1-该条消息无论最后是否成功都要返回状态报告2-该条消息不需要返回状态报告3-该条消息仅携带包月计费信息,不下发给用户,要返回状态报告其它-保留缺省设置为0,十六进制数字MessageType信息类型:0-短消息信息其它:待定十六进制数字TP_pidGSM协议类型。详细解释请参考GSM03.40中的9.2.3.9十六进制数字TP_udhiGSM协议类型。详细解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐十六进制数字MessageCoding短消息的编码格式。0:纯ASCII字符串3:写卡操作4:二进制编码8:UCS2编码15:GBK编码其它参见GSM3.38第4节:SMSDataCodingScheme十六进制数字MessageContent短消息的内容,十六进制数字Reserve保留,扩展用注1:消息ID定义在5.1中;注2:计费类型定义在5.3中。表4-2Submit命令的请求格式4.1.1.2Submit命令的应答内容字段说明CommandId命令ID,十六进制数字21注:错误码定义在5.2中表4-3Submit命令的应答格式4.1.2Deliver操作在SP和SMG的通信中,SMG用Deliver命向SP发送一条MO短消息。SMG接收到Deliver命令,会返回Deliver_Resp应答。SMG根据Deliver命令中目的特服号,判断出该服务属于和哪一个SMG相连接的SP,如果属于本地SP,则直接发送到SP,否则路由至相应的SMG。4.1.2.1Deliver命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字UserNumber发送该短消息的手机号,字符,手机号码前加“86”国别标志SPNumber接收该短消息的SP的接入号码,字符TP_pidGSM协议类型。详细解释请参考GSM03.40中的9.2.3.9十六进制数字TP_udhiGSM协议类型。详细解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐十六进制数字MessageCoding短消息的编码格式。0:纯ASCII字符串3:写卡操作4:二进制编码8:UCS2编码15:GBK编码其它参见GSM3.38第4节:SMSDataCodingScheme十六进制数字MessageContent短消息的内容,十六进制数字Reserve保留,扩展用表4-4Deliver命令的请求格式224.1.2.2Deliver命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultDeliver命令是否成功接收。十六进制数字0:接收成功其它:错误码Reserve保留,扩展用表4-5Deliver命令的应答格式4.1.3Report操作Report命令用于向SP发送一条先前的Submit命令的当前状态。4.1.3.1Report命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SubmitSequenceNumber该命令所涉及的Submit或deliver命令的序列号,十六进制数字ReportTypeReport命令类型0:对先前一条Submit命令的状态报告1:对先前一条前转Deliver命令的状态报告,十六进制数字UserNumber接收该短消息的手机号,字符,手机号码前加“86”国别标志State该命令所涉及的短消息的当前执行状态0:发送成功1:等待发送2:发送失败十六进制数字ErrorCode当State=2时为错误码值,否则为0,十六进制数字Reserve保留,扩展用表4-6Report命令的请求格式23注:当report反馈的是短消息中心的状态报告时,state的三种状态与短消息状态报告中的状态的对应关系见5.4report状态与短消息状态的映射。4.1.3.2Report命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultReport命令是否成功接收。十六进制数字0:接收成功其它:错误码Reserve保留,扩展用表4-7Report命令的应答格式4.1.4UserRpt操作UserRpt命令用于在完成对用户鉴权后,由SMG向手机用户所注册的SP发送命令,对手机用户进行状态配置。4.1.4.1UserRpt命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SPNumberSP的接入号码,字符UserNumber待配置的手机号码,字符,手机号码前加“86”国别标志UserCondition十六进制数,0:注销;1:欠费停机;2:恢复正常Reserve保留,扩展用表4-8UserRpt命令的请求格式4.1.4.2UserRpt命令的应答内容参数名称说明24CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultUserRpt命令执行结果0:成功其它:错误码Reserve保留,扩展用表4-9UserRpt命令的应答格式4.1.5Trace操作Trace命令用于向SMG请求跟踪某一条MT短消息的状态。4.1.5.1Trace命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SubmitSequenceNumber被跟踪MT短消息的命令序列号,十六进制数字UserNumber被跟踪MT短消息的目的手机号,字符,手机号码前加“86”国别标志Reserve保留,扩展用表4-10Trace命令的请求格式4.1.5.2Trace命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字Count被跟踪MT短消息经过的节点个数,当被跟踪短消息经过多个节点时,以下各个字段可重复ResultTrace命令在该节点是否成功接收。十六进制数字0:接收成功1:等待处理其它:错误码NodeId节点编号,字符25ReceiveTime被跟踪的短消息到达该节点时刻,格式为“yymmddhhmmss”SendTime该节点发出被跟踪的短消息时刻,格式为“yymmddhhmmss”Reserve保留,扩展用,当被跟踪短消息经过多个节点时,以上各个字段可重复表4-11Trace命令的应答格式4.2基于专用SGIP的消息定义专用SGIP协议中定义的消息由消息头和消息体组成。项目说明消息头消息头部分消息体消息体部分表4-12消息的组成4.2.1数据类型消息中利用到如下数据类型类型说明Integer无符号整数Text定长字符串,左对齐存储,空余位置补’\\0’表4-13消息的数据类型消息中的所有Integer类型的字段均采用网络字节顺序。所有消息中的序列号字段均占12个字节,分为3个4字节整数;通信传输时每个整数都使用网络字节顺序,但整数的次序并不改变。也就是说,通信传输的时候,序列号字段应该按照三个连续的4字节整数来处理。4.2.2消息头的格式字段长度(字节)类型说明MessageLength4Integer消息的总长度(字节)26CommandID4Integer命令IDSequenceNumber12Integer序列号表4-14消息头的格式4.2.3消息体的格式4.2.3.1Bind操作Bind操作由Bind命令和Bind_Resp应答组成。客户端首先发送Bind命令,服务器端收到Bind命令后,对命令发送方进行验证,然后返回Bind_Resp应答。4.2.3.1.1Bind命令的语法字段长度(字节)类型说明LoginType1Integer登录类型。1:SP向SMG建立的连接,用于发送命令2:SMG向SP建立的连接,用于发送命令3:SMG之间建立的连接,用于转发命令4:SMG向GNS建立的连接,用于路由表的检索和维护5:GNS向SMG建立的连接,用于路由表的更新6:主备GNS之间建立的连接,用于主备路由表的一致性11:SP与SMG以及SMG之间建立的测试连接,用于跟踪测试其它:保留LoginName16Text服务器端给客户端分配的登录名27LoginPassowrd16Text服务器端和LoginName对应的密码Reserve8Text保留,扩展用表4-15Bind消息格式4.2.3.1.2Bind_Resp应答的语法字段长度(字节)类型说明Result1IntegerBind执行命令是否成功。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-16Bind_Resp消息格式4.2.3.2Unbind操作Unbind操作由Unbind命令和Unbind_Resp应答组成。通信连接建立以后,客户端如果要停止通信,需要发送Unbind命令;服务器端收到Unbind命令后,向客户端发送Unbind_Resp相应,然后双方断开连接。4.2.3.2.1Unbind命令的语法Unbind命令没有消息体。4.2.3.2.2Unbind_Resp应答的语法Unbind_Resp应答没有消息体。284.2.3.3Submit操作在SP和SMG的通信中,SP用Submit命令向SMG提交MT短消息,发送到用户的手机中。SMG接收到Submit命令,会返回Submit_Resp应答。SMG根据Submit命令中的付费号码,判断出该命令是否应从本地SMSC发送,如果属于本地发送,则直接发送到相应的SMSC,否则路由至相应的SMG。在SMG和SMG的通信中,Submit命令用于SMG客户端向服务器端路由从SP收到的MT短消息。服务器端接收到Submit命令后,再发送到与之相连的目的SMSC。4.2.3.3.1Submit命令的语法字段长度(字节)类型说明SPNumber21TextSP的接入号码ChargeNumber21Text付费号码,手机号码前加“86”国别标志;当且仅当群发且对用户收费时为空;如果为空,则该条短消息产生的费用由UserNumber代表的用户支付;如果为全零字符串“000000000000000000000”,表示该条短消息产生的费用由SP支付。UserCount1Integer接收短消息的手机数量,取值范围1至100UserNumber21Text接收该短消息的手机号,该字段重复UserCount指定的次数,手机号码前加“86”国别标志…………CorpId5Text企业代码,取值范围0-99999ServiceType10Text业务代码,由SP定义FeeType1Integer计费类型FeeValue6Text取值范围0-99999,该条短消息的收费值,单位为分,由SP定义对于包月制收费的用户,该值为月租费的值29字段长度(字节)类型说明GivenValue6Text取值范围0-99999,赠送用户的话费,单位为分,由SP定义,特指由SP向用户发送广告时的赠送话费AgentFlag1Integer代收费标志,0:应收;1:实收MorelatetoMTFlag1Integer引起MT消息的原因0-MO点播引起的第一条MT消息;1-MO点播引起的非第一条MT消息;2-非MO点播引起的MT消息;3-系统反馈引起的MT消息。Priority1Integer优先级0-9从低到高,默认为0ExpireTime16Text短消息寿命的终止时间,如果为空,表示使用短消息中心的缺省值。时间内容为16个字符,格式为”yymmddhhmmsstnnp”,其中“tnnp”取固定值“032+”,即默认系统为北京时间ScheduleTime16Text短消息定时发送的时间,如果为空,表示立刻发送该短消息。时间内容为16个字符,格式为“yymmddhhmmsstnnp”,其中“tnnp”取固定值“032+”,即默认系统为北京时间ReportFlag1Integer状态报告标记0-该条消息只有最后出错时要返回状态报告1-该条消息无论最后是否成功都要返回状态报告2-该条消息不需要返回状态报告3-该条消息仅携带包月计费信息,不下发给用户,要返回状态报告其它-保留缺省设置为0TP_pid1IntegerGSM协议类型。详细解释请参考GSM03.40中的9.2.3.9TP_udhi1IntegerGSM协议类型。详细解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐30字段长度(字节)类型说明MessageCoding1Integer短消息的编码格式。0:纯ASCII字符串3:写卡操作4:二进制编码8:UCS2编码15:GBK编码其它参见GSM3.38第4节:SMSDataCodingSchemeMessageType1Integer信息类型:0-短消息信息其它:待定MessageLength4Integer短消息的长度MessageContentMessageLengthText短消息的内容Reserve8Text保留,扩展用表4-17Submit消息格式4.2.3.3.2Submit_Resp应答的语法字段长度(字节)类型说明Result1IntegerSubmit命令是否成功接收。0:接收成功其它:错误码Reserve8Text保留,扩展用表4-18Submit_Resp消息格式4.2.3.4Deliver操作在SP和SMG的通信中,SMG用Deliver命令向SP发送一条MO短消息。SP接收到Deliver命令,会返回Deliver_Resp应答。SMG根据Deliver命令中目的特服号,判断出该服务属于和哪一31个SMG相连接的SP,如果属于本地SP,则直接发送到SP,否则路由至相应的SMG。在SMG和SMG的通信中,Deliver命令用于SMG客户端向服务器端路由MO短消息。服务器端接收到Deliver命令后,再发送到与之相连的目的SP。4.2.3.4.1Deliver命令的语法字段长度(字节)类型说明UserNumber21Text发送短消息的用户手机号,手机号码前加“86”国别标志SPNumber21TextSP的接入号码TP_pid1IntegerGSM协议类型。详细解释请参考GSM03.40中的9.2.3.9TP_udhi1IntegerGSM协议类型。详细解释请参考GSM03.40中的9.2.3.23,仅使用1位,右对齐MessageCoding1Integer短消息的编码格式。0:纯ASCII字符串3:写卡操作4:二进制编码8:UCS2编码15:GBK编码其它参见GSM3.38第4节:SMSDataCodingSchemeMessageLength4Integer短消息的长度MessageContentMessageLengthText短消息的内容Reserve8Text保留,扩展用表4-19Deliver消息格式4.2.3.4.2Deliver_Resp应答的语法字段长度(字节)类型说明32Result1IntegerDeliver命令是否成功接收。0:接收成功其它:错误码Reserve8Text保留,扩展用表4-20Deliver_Resp消息格式4.2.3.5Report操作Report命令用于向SP发送一条先前的Submit命令的当前状态,或者用于向前转SMG发送一条先前的Deliver命令的当前状态。Report命令的接收方需要向发送方返回Report_Resp命令。4.2.3.5.1Report命令的语法字段长度(字节)类型说明SubmitSequenceNumber12Integer该命令所涉及的Submit或deliver命令的序列号ReportType1IntegerReport命令类型0:对先前一条Submit命令的状态报告1:对先前一条前转Deliver命令的状态报告UserNumber21Text接收短消息的手机号,手机号码前加“86”国别标志State1Integer该命令所涉及的短消息的当前执行状态0:发送成功1:等待发送2:发送失败ErrorCode1Integer当State=2时为错误码值,否则为0Reserve8Text保留,扩展用表4-21Report消息格式334.2.3.5.2Report_Resp应答的语法字段长度(字节)类型说明Result1IntegerReport命令是否成功接收。0:接收成功其它:错误码Reserve8Text保留,扩展用表4-22Report_Resp消息格式4.2.3.6AddSP操作AddSP操作用于在SMG和GNS之间通知添加了一个SP。4.2.3.6.1AddSP命令的语法字段长度(字节)类型说明SMGId6TextSP所在SMG的节点编号SPNumber21TextSP的接入号码ServiceTag10Text业务代码,该字段为空时不考虑服务特征串CorpId5Text企业代码,取值范围0-99999Reserve8Text保留,扩展用表4-23AddSP消息格式4.2.3.6.2AddSP_Resp应答的语法字段长度(字节)类型说明Result1IntegerAddSP命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-24AddSP_Resp消息格式344.2.3.7ModifySP操作ModifySP操作用于在SMG和GNS之间通知修改了一个SP的接入号码。4.2.3.7.1ModifySP命令的语法字段长度(字节)类型说明SMGId6TextSP所在SMG的节点编号OldSPNumber21TextSP的原接入号码OldServiceTag10Text业务代码,该字段为空时不考虑服务特征串NewSPNumber21TextSP的新接入号码NewServiceTag10Text业务代码,该字段为空时不考虑服务特征串CorpId5TextSP新的企业代码,可以不变Reserve8Text保留,扩展用表4-25ModifySP消息格式4.2.3.7.2ModifySP_Resp应答的语法字段长度(字节)类型说明Result1IntegerModifySP命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-26ModifySP_Resp消息格式4.2.3.8DeleteSP操作DeleteSP操作用于在SMG和GNS之间通知删除了一个SP的接入号码。354.2.3.8.1DeleteSP命令的语法字段长度(字节)类型说明SMGId6TextSP所在SMG的节点编号SPNumber21TextSP的接入号码ServiceTag10Text业务代码,该字段为空时不考虑服务特征串Reserve8Text保留,扩展用表4-27DeleteSP消息格式4.2.3.8.2DeleteSP_Resp应答的语法字段长度(字节)类型说明Result1IntegerDeleteSP命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-28DeleteSP_Resp消息格式4.2.3.9QueryRoute操作QueryRoute操作用于在SMG向GNS请求一条或全部路由信息。364.2.3.9.1QueryRoute命令的语法字段长度(字节)类型说明QueryType1Integer请求类型0-全部路由表信息1-根据SP接入号码查找SMG2-根据手机号码段查找SMG3-根据SP接入号码和业务代码查找SMG4-根据SMG节点编号查找该SMG所对应全部路由信息Number21Text请求类型为0-忽略1和3-SP接入号码2-手机号码段4-SMG节点编号左对齐,剩余部分填’\\0’ServiceTag10Text业务代码,该字段为空时不考虑业务代码,请求类型为0、1、2时,该字段无效。Reserve8Text保留,扩展用表4-29QueryRoute消息格式4.2.3.9.2QueryRoute_Resp应答的语法字段长度(字节)类型说明Result1IntegerQueryRoute命令是否成功执行。0:执行成功其它:错误码Count4Integer返回路由表项的个数(>=1),如果大于1,则以下字段(包括Reserve字段)重复出现Type1Integer表项类型1-Number为SP接入号码2-Number为手机号码段Number21TextSP接入号码或手机号码段37Mark10TextSP业务代码或手机用户类型当Type为1时,可表示SP业务代码,该字段为空则不考虑业务代码;当Type为2时,表示手机用户类型;Code5TextSP企业代码或号段所在地区长途区号左对齐,剩余部分填’\\0’SMGId6TextSMG节点编号SMGIP4IntegerSMGIP地址号LoginUser16TextSMG的登录用户名Password16TextSMG的登录密码Reserve8Text保留,扩展用表4-30QueryRoute_Resp消息格式QueryRoute_Resp每次最多返回20条路由信息,当全部路由信息超过20条时,GNS对路由信息分包传送,并在传送完所有路由信息后发送一个空包(包体为空)表明应答结束。4.2.3.10AddTeleSeg操作AddTeleSeg操作用于在GNS向SMG通知添加了一个号码段。4.2.3.10.1AddTeleSeg命令的语法字段长度(字节)类型说明SMGId6Text号码段所在SMG的节点编号TeleSeg7Text手机号码段TeleType1Text用户类型;0:签约用户,1:如意通AreaCode4Text号段所在地区长途区号Reserve8Text保留,扩展用表4-31AddTeleSeg消息格式384.2.3.10.2AddTeleSeg_Resp应答的语法字段长度(字节)类型说明Result1IntegerAddTeleSeg命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-32AddTeleSeg_Resp消息格式4.2.3.11ModifyTeleSeg操作ModifyTeleSeg操作用于在GNS向SMG通知修改了一个号码段。4.2.3.11.1ModifyTeleSeg命令的语法字段长度(字节)类型说明SMGId6Text号码段所在SMG的节点编号OldTeleSeg7Text原号码段NewTeleSeg7Text新号码段NewTeleType1Text新号段用户类型;0:签约用户,1:如意通NewAreaCode4Text新号段所在地区长途区号,可以不变Reserve8Text保留,扩展用表4-33ModifyTeleSeg消息格式4.2.3.11.2ModifyTeleSeg_Resp应答的语法字段长度(字节)类型说明Result1IntegerModifyTeleSeg命令是否成功执行。0:执行成功其它:错误码39Reserve8Text保留,扩展用表4-34ModifyTeleSeg_Resp消息格式4.2.3.12DeleteTeleSeg操作DeleteTeleSeg操作用于在GNS通知SMG删除了一个号码段。4.2.3.12.1DeleteTeleSeg命令的语法字段长度(字节)类型说明SMGId6Text号码段所在SMG的节点编号TeleSeg7Text号码段Reserve8Text保留,扩展用表4-35DeleteTeleSeg消息格式4.2.3.12.2DeleteTeleSeg_Resp应答的语法字段长度(字节)类型说明Result1IntegerDeleteTeleSeg命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-37DeleteTeleSeg_Resp消息格式404.2.3.13AddSMG操作4.2.3.13.1AddSMG命令的语法字段长度(字节)类型说明SMGId6Text新增SMG的节点编号SMGIP4IntegerSMGIP地址号LoginName16Text服务器端为SMG分配的登录名LoginPassowrd16Text服务器端和LoginName对应的密码Reserve8Text保留,扩展用表4-38AddSMG消息格式4.2.3.13.2AddSMG_Resp应答的语法字段长度(字节)类型说明Result1IntegerAddSMG命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-39AddSMG_Resp消息格式4.2.3.14ModifySMG操作4.2.3.14.1ModifySMG命令的语法字段长度(字节)类型说明OldSMGId6Text被修改的SMG的原节点编号NewSMGId6Text被修改的SMG的新节点编号41SMGIP4IntegerSMG新的IP地址号LoginName16Text服务器端为SMG分配的登录名LoginPassowrd16Text服务器端和LoginName对应的密码Reserve8Text保留,扩展用表4-40ModifySMG消息格式4.2.3.14.2ModifySMG_Resp应答的语法字段长度(字节)类型说明Result1IntegerModifySMG命令是否成功执行。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-41ModifySMG_Resp消息格式4.2.3.15DeleteSMG操作4.2.3.15.1DeleteSMG命令的语法字段长度(字节)类型说明SMGId6Text被删除的SMG的节点编号Reserve8Text保留,扩展用表4-42DeleteSMG消息格式4.2.3.15.2DeleteSMG_Resp应答的语法字段长度(字节)类型说明Result1IntegerDeleteSMG命令是否成功执行。0:执行成功其它:错误码42Reserve8Text保留,扩展用表4-43DeleteSMG_Resp消息格式4.3鉴权消息定义鉴权消息用于SMG向计费中心请求对一个手机用户进行鉴权。鉴权操作由CheckUser命令和CheckUser_Resp应答组成。UserRpt命令和UserRpt_Resp应答用于完成对用户鉴权后,由SMG向手机用户所注册的SP发送命令,对手机用户进行状态配置。4.3.1CheckUser命令的语法字段长度(字节)类型说明UserName16Text计费中心给SMG分配的用户名Passowrd16Text和用户名对应的密码UserNumber21Text待鉴权的手机号码,手机号码前加“86”国别标志Reserve8Text保留,扩展用表4-44CheckUser消息格式4.3.2CheckUser_Resp应答的语法字段长度(字节)类型说明Result1Integer鉴权结果0:鉴权成功其它:错误码Status1Integer用户状态0:注销;1:欠费停机;2:正常Reserve8Text保留,扩展用表4-45CheckUser_Resp消息格式434.3.3UserRpt命令的语法字段长度(字节)类型说明SPNumber21TextSP的接入号码UserNumber21Text待配置的手机号码,手机号码前加“86”国别标志UserCondition1Integer0:注销;1:欠费停机;2:恢复正常Reserve8Text保留,扩展用表4-46UserRpt消息格式4.3.4UserRpt_Resp应答的语法字段长度(字节)类型说明Result1IntegerUserRpt命令执行结果0:成功其它:错误码Reserve8Text保留,扩展用表4-47UserRpt_Resp消息格式4.4测试消息定义测试消息用于向SMG请求跟踪查询某一条MT短消息的状态。测试操作由Trace命令和Trace_Resp应答组成,Trace_Resp应答的最大延迟时间为5分钟。测试操作通过测试端口进行通信。4.4.1Trace命令的语法字段长度(字节)类型说明SubmitSequenceNumber12Integer被跟踪MT短消息的命令序列号44UserNumber21Text被跟踪MT短消息的目的手机号,手机号码前加“86”国别标志Reserve8Text保留,扩展用表4-48Trace消息格式4.4.2Trace_Resp应答的语法字段长度(字节)类型说明Count1Integer被跟踪MT短消息经过的节点个数,当被跟踪短消息经过多个节点时,以下各个字段可重复Result1IntegerTrace命令在该节点是否成功接收。十六进制数字0:接收成功1:等待处理其它:错误码NodeId6Text节点编号ReceiveTime16Text被跟踪的短消息到达该节点时刻,格式为“yymmddhhmmss”SendTime16Text该节点发出被跟踪的短消息时刻,格式为“yymmddhhmmss”Reserve8Text保留,扩展用表4-49Trace_Resp消息格式455.常量定义5.1消息ID定义消息ID名称消息ID取值SGIP_BIND0x1SGIP_BIND_RESP0x80000001SGIP_UNBIND0x2SGIP_UNBIND_RESP0x80000002SGIP_SUBMIT0x3SGIP_SUBMIT_RESP0x80000003SGIP_DELIVER0x4SGIP_DELIVER_RESP0x80000004SGIP_REPORT0x5SGIP_REPORT_RESP0x80000005SGIP_ADDSP0x6SGIP_ADDSP_RESP0x80000006SGIP_MODIFYSP0x7SGIP_MODIFYSP_RESP0x80000007SGIP_DELETESP0x8SGIP_DELETESP_RESP0x80000008SGIP_QUERYROUTE0x9SGIP_QUERYROUTE_RESP0x80000009SGIP_ADDTELESEG0xaSGIP_ADDTELESEG_RESP0x8000000aSGIP_MODIFYTELESEG0xbSGIP_MODIFYTELESEG_RESP0x8000000bSGIP_DELETETELESEG0xcSGIP_DELETETELESEG_RESP0x8000000cSGIP_ADDSMG0xdSGIP_ADDSMG_RESP0x8000000dSGIP_MODIFYSMG0xeSGIP_MODIFYSMG_RESP0x0000000eSGIP_DELETESMG0xfSGIP_DELETESMG_RESP0x8000000f46SGIP_CHECKUSER0x10SGIP_CHECKUSER_RESP0x80000010SGIP_USERRPT0x11SGIP_USERRPT_RESP0x80000011SGIP_TRACE0x1000SGIP_TRACE_RESP0x80001000表5-1消息ID定义5.2错误码定义错误码描述0无错误,命令正确接收1非法登录,如登录名、口令出错、登录名与口令不符等。2重复登录,如在同一TCP/IP连接中连续两次以上请求登录。3连接过多,指单个节点要求同时建立的连接数过多。4登录类型错,指bind命令中的logintype字段出错。5参数格式错,指命令中参数值与参数类型不符或与协议规定的范围不符。6非法手机号码,协议中所有手机号码字段出现非86130号码或手机号码前未加“86”时都应报错。7消息ID错8信息长度错9非法序列号,包括序列号重复、序列号格式错误等10非法操作GNS11节点忙,指本节点存储队列满或其他原因,暂时不能提供服务的情况21目的地址不可达,指路由表存在路由且消息路由正确但被路由的节点暂时不能提供服务的情况22路由错,指路由表存在路由但消息路由出错的情况,如转错SMG等23路由不存在,指消息路由的节点在路由表中不存在24计费号码无效,鉴权不成功时反馈的错误信息25用户不能通信(如不在服务区、未开机等情况)26手机内存不足27手机不支持短消息28手机接收短消息出现错误4729不知道的用户30不提供此功能31非法设备32系统失败33短信中心队列满其它其它错误码(待定义)表5-2错误码定义注:错误码1-20所指错误一般在各类命令的应答中用到,21-32所指错误一般在report命令中用到。5.3计费类别定义用户计费类别描述0“短消息类型”为“发送”,对“计费用户号码”不计信息费,此类话单仅用于核减SP对称的信道费1对“计费用户号码”免费2对“计费用户号码”按条计信息费3对“计费用户号码”按包月收取信息费4对“计费用户号码”的收费是由SP实现5.4Report状态与短消息状态的映射Report状态短消息状态0,发送成功DELIVERED1,等待发送ENROUTE,ACCEPTED2,发送失败EXPIRED,DELETED,UNDELIVERABLE,UNKNOWN,REJECTED附录1缩略语GNSGatewayNameServer,负责系统路由的管理和同步MO由手机用户提交的短消息48MT由手机用户接收的短消息SGIPShortMessageGatewayInterfaceProtocol,本协议所描述的短消息网关接口协议,用于完成在SMG和SP之间、SMG和SMG之间短消息的发送、接收和转发功能,以及SMG和GNS之间路由表的同步功能SMGShortMessageGateway,联通公司的短消息网关,SMG之间的通讯协议采用SGIPSMPPShortMessagePeertoPeer,短消息点对点协议,采用3.3版本SMSCShortMessageServiceCenter,短消息中心SPServiceProvider,服务提供商49附录2全网路由表的格式示范全网路由表位于GNS,各个SMG都有一份拷贝。全网路由表用于根据号码段或SP接入号码查询到相应的SMG。1.SMG定义表字段名称字段定义说明SMGIDText(6)SMG节点编号SMGIPInteger(4)SMGIP地址LoginUserText(16)SMG的登录用户名PasswordText(16)SMG的登录密码2.号码段-SMG对应表字段名称字段定义说明TeleSegText(7)号码段TeleTypeText(1)用户类型;0:签约用户,1:如意通AreaCodeText(4)号段所在地区长途区号SMGIDText(6)SMG节点编号3.SP接入号-SMG对应表字段名称字段定义说明SPNumberText(21)SP接入号码ServiceTagText(10)业务代码,该字段为空时路由时不考虑服务特征串SMGIDText(6)SMG节点编号CorpIdText(5)SP企业代码50附录3本地路由表的格式示范本地路由表位于各SMG,每个SMG的本地路由表的内容都不相同。本地路由表用于根据号码段或SP接入号码查询到相应的SMSC或SP。1.SMSC定义表字段名称字段定义说明SMSCIDText(6)SMSC节点编号SMSCIPInteger(4)SMSCIP地址LoginNameText(16)SMG和SMSC连接时的登录名PasswordText(16)SMG和SMSC连接时的登录密码2.号码段-SMSC对应表字段名称字段定义说明TeleSegText(7)号码段TeleTypeText(1)用户类型;0:签约用户,1:如意通AreaCodeText(4)号段所在地区长途区号SMSCIDText(6)SMSC节点编号3.SP定义表字段名称字段定义说明SPNumberText(21)SP接入号码ServiceTagText(10)业务代码,该字段为空时路由时不考虑服务特征串SPIDText(6)SP节点编号SPIPInteger(4)SPIP地址LoginNameText(16)SMG和SP连接时的登录名PasswordText(16)SMG和SP连接时的登录密码CorpIdText(5)SP企业代码51附录4HTTP承载方式示范下面以Deliver操作为例说明HTTP承载方式的用法。SMG向SP发送Deliver命令时,采用如下格式(假设SP提供的处理Deliver命令的URL为http://www.spserver.com/sp.cgi,该短消息是从节点号为205502的SMSC上接收下来的,接收时间为3月27日12时50分25秒,这是这一秒内收到的第327条短消息,短消息是由号码为8613001125453的手机发送的,SP的接入号码为168,且短消息的内容为ABCD1234,返回短消息内容为EFGH5678):POST/sp.cgiHTTP/1.0Host:www.spserver.comAuthorization:BasicContent-Length:=<4>=<205502327125025327>=<8613001125453>=<168>=SP收到请求后,返回应答表示SP成功接收该命令,同时返回MT信息HTTP/1.0200OKDate:Tue,13Mar200102:45:12GMTServer:Apache/1.3.12(Unix)Content-Type:text/html=<80000004>=<205502327125025327>=<8613001125453>=<168>52=Connection:close=<0>附录5引用标准[1]SMPP3.3[2]GSM3.40[3]GSM3.3853[4]HTTP1.054',)


  • 编号:1700666491
  • 分类:合同模板
  • 软件: wps,office word
  • 大小:59页
  • 格式:docx
  • 风格:商务
  • PPT页数:1974272 KB
  • 标签:

广告位推荐

相关合同模板更多>