中国联合通信公司

上传人:Sc****h 文档编号:126763409 上传时间:2022-07-29 格式:DOC 页数:45 大小:1.66MB
收藏 版权申诉 举报 下载
中国联合通信公司_第1页
第1页 / 共45页
中国联合通信公司_第2页
第2页 / 共45页
中国联合通信公司_第3页
第3页 / 共45页
资源描述:

《中国联合通信公司》由会员分享,可在线阅读,更多相关《中国联合通信公司(45页珍藏版)》请在装配图网上搜索。

1、中国联合通信公司短消息网关系统接口协议(SGIP) 版本1.2 中国联合通信公司二零零一年十月目录1概述11.1协议说明11.2适用范围11.3参考资料11.4术语表12系统体系结构32.1消息从本地SMSC到本地SP42.2消息从本地SP到本地SMSC42.3消息从本地SMSC到异地SP42.4消息从本地SP到异地SMSC42.5路由选择43通信流程63.1专用SGIP方式63.2通用HTTP方式63.3通信节点编号规则73.4序列号的定义73.5通信的安全性83.6用户鉴权83.6.1被叫方付费83.6.2SP付费83.6.3第三方付费83.7 SP与SMG的通信93.7.1通用HTTP方

2、式93.7.1.1从SP到SMG的命令93.7.1.2从SMG到SP的命令103.7.2专用SGIP方式103.7.2.1通信初始化103.7.2.2通信过程103.7.2.3通信结束113.7.2.4故障处理123.7.2.5从SP到SMG的消息123.7.2.6从SMG到SP的消息133.8 SMG与SMG之间的通信133.8.1通信初始化143.8.2通信过程143.8.3通信结束143.8.4故障处理143.8.5两个SMG之间的消息153.9 SMG与GNS之间的通信153.9.1通信初始化153.9.2通信过程153.9.3通信结束163.9.4故障处理163.9.5从SMG到GN

3、S的消息163.9.6从GNS到SMG的消息164消息定义184.1基于通用HTTP的消息定义184.1.1Submit操作184.1.1.1Submit命令的请求内容184.1.1.2Submit命令的应答内容194.1.2Deliver操作204.1.2.1Deliver命令的请求内容204.1.2.2Deliver命令的应答内容204.1.3Report操作214.1.3.1Report命令的请求内容214.1.3.2Report命令的应答内容214.1.4UserRpt操作224.1.4.1UserRpt命令的请求内容224.1.4.2UserRpt命令的应答内容224.1.5Trac

4、e操作224.1.5.1Trace命令的请求内容224.1.5.2Trace命令的应答内容234.2基于专用SGIP的消息定义234.2.1数据类型234.2.2消息头的格式244.2.3消息体的格式244.2.3.1Bind操作244.2.3.2Unbind操作254.2.3.3Submit操作254.2.3.4Deliver操作274.2.3.5Report操作284.2.3.6AddSP操作284.2.3.7ModifySP操作294.2.3.8DeleteSP操作304.2.3.9QueryRoute操作304.2.3.10AddTeleSeg操作314.2.3.11ModifyTel

5、eSeg操作324.2.3.12DeleteTeleSeg操作324.2.3.13AddSMG操作334.2.3.14ModifySMG操作344.2.3.15DeleteSMG操作344.3鉴权消息定义354.3.1CheckUser命令的语法354.3.2CheckUser_Resp应答的语法354.3.3UserRpt命令的语法354.3.4UserRpt_Resp应答的语法354.4测试消息定义364.4.1Trace命令的语法364.4.2Trace_Resp应答的语法365常量定义375.1消息ID定义375.2错误码定义375.3计费类别定义385.4Report 状态与短消息状

6、态的映射38附录1: 全网路由表的格式示范39附录2: 本地路由表的格式示范40附录3: HTTP承载方式示范41iii中国联合通信公司短消息网关系统接口协议1.1版1概述1.1协议说明本协议是SMG和SP之间、SMG和GNS之间、以及SMG和SMG之间的接口协议,简称SGIP。通过应用SGIP协议,SP可以接入到SMG,实现SP应用的一点接入、全网服务;SMG可以通过SGIP协议,实现消息在不同SMG之间的路由和转发。同时,SMG通过该协议也可以和GNS通信,以实现各SMG和GNS之间路由表的同步功能。1.2适用范围本协议适用于各SP厂商和SMG的开发厂商。1.3参考资料1SMPP3.32G

7、SM 3.403GSM 3.384HTTP1.0 1.4术语表本协议用到以下术语:GNSGateway Name Server,负责系统路由的管理和同步MO由手机用户提交的短消息MT由手机用户接收的短消息SGIPShort Message Gateway Interface Protocol,本协议所描述的短消息网关接口协议,用于完成在SMG和SP之间、SMG和SMG之间短消息的发送、接收和转发功能,以及SMG和GNS之间路由表的同步功能SMGShort Message Gateway ,联通公司的短消息网关,SMG之间的通讯协议采用SGIPSMPPShort Message Peer to

8、Peer,短消息点对点协议,采用3.3版本SMSCShort Message Service Center ,短消息中心SPService Provider,服务提供商2系统体系结构SMG是具有短消息转发功能的短消息网关。全国可以有多个SMG网关,SMG网关之间通过互联网等方式实现网络互联。每一个SMG同时与多个SMSC以及多个SP连接。全网具有唯一有效的GNS,GNS负责全局路由表的维护与更新;为了确保路由表存储的安全性,网络中设置主备用GNS,两个GNS要保持一致性。每一个SMG都和GNS连接。SMG与SP、SMG与GNS以及SMG与SMG之间的通信协议为SGIP协议。SMG与SMSC之间

9、的通信统一采用SMPP3.3协议。图2-1说明了系统的体系结构。图2-1 SMG的体系结构和SMG平台之间相连的SMSC称作本地SMSC,和异地SMG平台相连的SMSC称作异地SMSC。和SMG平台之间相连的SP称作本地SP,和异地SMG平台相连的SP称作异地SP。从本地SMSC向本地SP以及从本地SP向本地SMSC发送的消息直接由SMG转发;从本地SMSC向异地SP以及从本地SP向异地SMSC发送的消息由本地SMG路由到异地SMG后,再由异地SMG转发。2.1消息从本地SMSC到本地SPSMG从SMSC接收到短消息,直接发给SP。比如SMSC1ASMG1SP1YSMSC1BSMG1SP1X2

10、.2消息从本地SP到本地SMSCSMG从SP接收短消息,直接发给SMSC。比如SP1XSMG1SMSC1ASP1YSMG1SMSC1B2.3消息从本地SMSC到异地SPSMG从本地SMSC接收短消息,再路由到异地SMG,由异地的SMG发送到目的SP,比如SMSC1ASMG1SMG2SP2YSMSC1BSMG1SMG3SP3X2.4消息从本地SP到异地SMSCSMG从本地SP接收短消息,再路由到异地SMG,由异地的SMG发送到目的SMSC,比如SP1XSMG1SMG2SMSC2ASP1YSMG1SMG3SMSC3B2.5路由选择当消息在本地SMSC和异地SP,或者在本地SP和异地SMSC之间传输

11、时,发送方必须要获取消息接收方的位置信息。这部分功能称为路由选择。对于MO方向的命令(即命令接收方为SP),其路由根据命令中的SP接入号码来选择。对于MT方向的命令(即接收方为用户手机),其路由根据命令中的付费号码和用户号码来综合判断。如果付费号码为空,或付费号码为SP接入号码,则根据用户号码来选择路由;否则根据付费号码所代表的手机号码来选择路由(这样做是考虑到了系统计费和用户鉴权的可行性,关于计费和用户鉴权的细节,请参见其它文档)。由于SMG网关之间采用网状互联,网关之间不可能出现二次前转,因此接收前转消息的网关必须能判断前转的消息目的地址是否是本网关覆盖范围的用户,若不是,必须发送出错信息

12、到前转网关。3 通信流程SGIP有两种具体实现方式,一种是采用专用SGIP方式,另一种是采用通用HTTP方式。SMG和GNS、以及SMG和SMG之间采用专用SGIP方式作为承载协议;而SP和SMG的通信同时支持专用SGIP方式和通用HTTP方式两种承载协议。3.1专用SGIP方式采用专用SGIP方式承载时,通信双方互为客户端和服务器端。当客户端要发送命令时,主动向服务器端建立连接,然后向服务器端发送命令,并接收应答;服务器端从客户端接收命令,返回应答。连接建立以后,客户端可以连续发送多条命令。命令发送完并接收到所有应答后,客户端应该主动断开连接。但是,命令及其应答之间的时间间隔最大不能超过30

13、秒(默认,可配置)(如果命令应答时间超过最大等待时间,则要求客户端重发该条命令,重发机制参见业务联网规范有关内容),且待应答的命令不得超过32条(可以根据线路的质量和服务器的处理能力配置)。而且,如果服务器端检测出一条连接长时间空闲(默认60秒,可配置),可以主动断开该连接。如果需要,客户端可以同时向一个服务器端建立多个连接(SMG与单个其他SMG最多不能建立超过15个连接,对与之相连的单个SP的最大连接数视具体情况而定)。采用专用SGIP承载方式时,SMG和SMG、SP和SMG之间使用的端口号是8801,GNS监听SMG的端口号为8802,SMG监听GNS的端口号为8803,主GNS和备用G

14、NS之间的端口号为8804,SMG之间的测试用端口号为8810。3.2通用HTTP方式HTTP承载方式只适用于SP和SMG的通信中。与SP与SMG之间的专用SGIP承载方式不同的是,该种方式一次连接仅仅传送一条命令,而且连接的认证采用HTTP的URL的授权认证的方式,不需要专门的连接认证的命令,使用的端口号是80。3.3通信节点编号规则在整个网关系统中,所有的通信节点(SMG、GNS、SP和SMSC)都有一个唯一的数字编号,不同的SP或SMSC或SMG或GNS编号不能相同,编号由系统管理人员负责分配。编号规则如下:SMG的编号规则:1AAAAXSMSC的编号规则:2AAAAXSP的编号规则:3

15、AAAAQQQQQGNS的编号规则:4AAAAX其中,AAAA表示四位长途区号(不足四位的长途区号,左对齐,右补零),X表示1位序号,QQQQQ表示5位企业代码。3.4序列号的定义短消息网关系统之中传输的每一条命令都有一个序列号,序列号由命令源节点产生并唯一标记一条命令;也就是说,网关系统中任何两个命令的序列号都不相同。需要注意的是,一条命令在发送过程中转发的不同副本视为一条命令,使用相同的序列号。比如,SP1X向SMSC2A发送一条命令,该命令需经过多次转发才能到达SMSC2A,而转发该命令的每一次通信过程中使用的命令的序号均相同,为SP1X与SMG1通信所使用的序列号。对于MO短消息,例如

16、SMSC1B向SP3X发送一条命令,短消息首先采用SMPP协议发送到SMG1,经过SMG1转发时序列号必须由SMG1重新生成(此时命令源节点为SMG1)。序列号分成三部分,每部分为一个32位整数,第一部分表示命令源节点的编号,第二部分表示命令产生的日期和时间(网关系统中的任何命令的保存时间都不应该超过一年),格式为十进制的mmddhhmmss,比如11月20日20时32分25秒产生的命令,其第二部分为十进制1120203225;第三部分由0开始,循环进位,直到进位满了之后再清零,重新开始计数。接收方在返回应答时,应答的序列号必须和相对应的命令的序列号相同。图3-1 命令序列号格式举例3.5通信

17、的安全性SP与SMG、SMG与SMG以及SMG与GNS之间采用专用SGIP方式通信时可采用对称加密方式。SP与SMG之间采用通用HTTP方式时,可采用HTTPS方式加密。3.6用户鉴权当一条MT短消息需要处理时,终点SMG必须保证该短消息的付费方有资格享用该服务(比如付费用户不欠费)。根据短消息服务类型的不同,可以将付费方式分成三类:被叫方付费、SP付费和第三方付费。3.6.1被叫方付费目前的短消息中心都具有对被叫用户鉴权的功能,所以对由被叫方付费的MT短消息,SMG不作鉴权检查,直接转发至SMSC;如果被叫方鉴权失败,SMSC会通过反馈通知SMG。3.6.2SP付费当MT短消息是由SP付费时

18、(如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

19、/IP连接;2 SMG向计费中心发送鉴权命令;3 SMG从计费中心接收鉴权应答;4 SMG和计费中心断开连接;消息描述CheckUserSMG向计费中心请求对一个手机号码鉴权CheckUser_Resp计费中心向SMG返回的一个手机号码的鉴权结果表3-1 SMG和计费中心的鉴权消息3.7 SP与SMG的通信SP和SMG支持两种类型的通信承载方式:通用HTTP承载方式和通用SGIP承载方式。3.7.1通用HTTP方式SP和SMG之间采用通用HTTP方式通信时,SP和SMG互为HTTP的客户端和服务器端。HTTP服务器端对相关的URL进行保护,HTTP客户端必须采用授权方式访问这些URL。HTTP

20、的特点决定客户端和服务器端的每一次通信都必须一次完成授权连接、发送请求、接收应答、关闭连接等过程(HTTP承载方式不再需要专门的连接命令)。对于MO方向的命令(即命令接收方为SP),由SMG通过POST方式提交给SP进行处理,SP将处理结果以及MT方向信息在HTTP应答中返回给SMG;对于SP主动向用户发送信息的PUSH业务,由SP作为客户端将信息通过POST方式提交给SMG进行处理,SMG在应答中确认信息发送成功与否。因为HTTP服务器对URL进行了授权保护,所以HTTP客户端必须在每次请求中都带上授权信息。HTTP客户端的一个请求只能携带一条命令。SP与SMG之间发送的任何一条命令都带有一

21、个序列号,序列号由命令源产生,任何两条命令的序列号不能重复。如果HTTP服务器接收到的HTTP请求内容的格式不完整或不正确, 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当前结果UserRptS

22、MG用该命令报告SP一条手机用户的状态表3-3 从SMG到SP的命令3.7.2专用SGIP方式SP和SMG之间的通信由客户端向服务器端发起连接。连接建立以后,由客户端向服务器端发送命令,服务器端必须对接收到的每一条命令返回一条应答消息。SP和SMG互为客户端和服务器端。3.7.2.1通信初始化客户端有命令要向服务器端发送时,由客户端首先通过Bind命令向服务器端发起连接。服务器端根据Bind命令之中的登录名和密码,对客户端的合法性进行验证,然后返回一条Bind_Resp应答给客户端。如果验证通过,则客户端和服务器端的通信开始,否则中断连接。3.7.2.2通信过程SP与SMG之间发送的任何一条命

23、令都带有一个序列号,序列号由命令源产生。客户端与服务器端通信开始以后,客户端可以向服务器端发送相应的命令,服务器端对收到的命令返回应答。图3-2 SP和SMG的通信消息样例(SP为客户端)图3-3 SP和SMG的通信消息样例(SMG为客户端)命令在SP和SMSC之间的传输是采用类似接力的方式,每条命令和对应的应答仅仅表示该次命令发送的结果是否正确。比如,SP向某一个手机发送一条短消息,是通过向本地SMG发送一条Submit命令实现的,随后,SP会从SMG接收到一条Submit_Resp应答。但是,即使应答表示Submit命令已正确接收,也不表示Submit命令内的短消息已经发送到手机上了,而仅

24、仅表示该短消息已经传送到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还应向用

25、户终端返回友好的应答信息说明不成功原因。3.7.2.4.1网络故障客户端与服务器端的通信过程中如果检测到双方连接中断(如网络断线),客户端应该断开连接,然后尝试重新向服务器端建立新的连接;服务器端应该按照接收到Unbind的情况进行处理,断开和客户端的连接。3.7.2.4.2接收到非法命令或应答如果服务器端接收到的命令语法错误,比如命令不完整、命令无法识别等,则断开和客户端的连接;客户端应该向服务器端建立新连接继续发送命令。如果客户端接收到的应答语法错误,比如命令不完整、命令无法识别等,则主动断开和服务器端的连接;服务器端也应该断开和客户端的连接。如果命令语法正确,但服务器端不处理该命令,比如

26、SP为服务器端时收到Submit命令,则返回相应应答,并在应答中指定错误原因。如果应答语法正确,但客户端不处理该应答,比如SP为客户端时收到Deliver_Resp应答,则丢弃。3.7.2.4.3序列号重复如果命令的序列号和以前接收到的命令的序列号相同,且命令内容也相同,则接收方丢弃该命令;如果序列号相同,但是命令内容并不相同,则命令接收方在应答中返回错误码。3.7.2.5从SP到SMG的消息消息适用方式描述BindSP为客户端SP用该消息向SMG发出建立连接的请求Bind_RespSP为服务器SP对Bind命令的应答UnbindSP为客户端SP用该消息向SMG通知将要断开现有的连接Unbin

27、d_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_RespS

28、MG为服务器端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的消息3.8 SMG与SMG之间的通信在网关系统之中,任何

29、两个SMG之间都要建立一对基于TCP/IP的连接,以实现命令的路由。两个SMG互为客户端和服务器端,客户端向服务器端发送命令,接收应答;服务器端从客户端接收命令,返回应答。图3-4 SMG之间的通信消息样例3.8.1通信初始化SMG与SMG通信时,由客户端首先通过Bind命令向服务器端发起连接。服务器端根据Bind命令之中的登录名和密码,对客户端的合法性进行验证,然后返回一条Bind_Resp应答给客户端。如果验证通过,则客户端和服务器端的通信开始,否则中断连接。3.8.2通信过程两个SMG之间的通信和SP和SMG之间的基于TCP/IP的承载方式的通信方式相同。3.8.3通信结束如果客户端认为

30、和服务器端的通信已结束,则客户端应该向服务器端发送Unbind命令,服务器端随后返回Unbind_Resp应答,然后双方断开连接。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

31、短消息Deliver_Resp服务器端向从客户端接收到的Deliver命令发送的应答消息Report客户端向服务器端发送一条MT或MO的发送结果Report_Resp服务器端向从客户端接收到的Report命令发送应答消息UserRpt客户端向服务器端发送一条手机用户的状态信息UserRpt_Resp服务器端向从客户端接收到的UserRpt命令发送应答消息Trace客户端向服务器端发送请求跟踪某一条MT短消息状态的信息Trace_Resp服务器端向从客户端接收到的Trace命令发送应答消息表3-6 SMG之间的消息3.9 SMG与GNS之间的通信在网关系统之中,任何一个SMG都要和GNS以互为客

32、户端/服务器的方式建立连接来完成路由表的更新和维护。当SMG对本地的路由表作修改后,需要主动以客户端的身份向GNS建立连接,通知GNS更新路由表;当GNS修改了路由表后,需要主动以客户端的身份向所有的SMG建立连接,通知SMG更新路由表。3.9.1通信初始化SMG与GNS通信时,由客户端首先通过Bind命令向服务器端发起连接。服务器端根据Bind命令之中的登录名和密码,对客户端的合法性进行验证,然后返回一条Bind_Resp应答给客户端。如果验证通过,则客户端和服务器端的通信开始,否则中断连接。3.9.2通信过程客户端和服务器端建立连接以后,客户端向服务器端发送命令,服务器端则返回应答。3.9

33、.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为服务

34、器端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对ModifyT

35、eleSeg命令的应答DeleteTeleSegSMG为客户端SMG通知GNS删除了一个号码段DeleteTeleSeg_RespSMG为服务器端SMG对DeleteTeleSeg命令的应答QueryRouteSMG为客户端SMG向GNS请求一个手机号或接入号码的路由信息,或全部路由表信息QueryRoute_RespSMG为服务器端SMG对QueryRoute命令的应答表3-7从SMG到GNS的消息3.9.6从GNS到SMG的消息消息适用方式描述BindGNS为客户端GNS向SMG端请求连接Bind_RespGNS为服务器端GNS对Bind命令的应答UnbindGNS为客户端GNS向SMG端

36、通知断开当前的连接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对Ad

37、dTeleSeg命令的应答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为服务器端GN

38、S对ModifySMG命令的应答DeleteSMGGNS为客户端GNS通知SMG删除了一个SMGDeleteSMG_RespGNS为服务器端GNS对DeleteSMG命令的应答表3-8从GNS到SMG的消息4 消息定义系统中的消息分三种:基于HTTP的消息、基于TCP/IP的消息和鉴权消息,系统中每个消息包最大不超过2K字节。4.1基于通用HTTP的消息定义HTTP客户端采用POST方法向服务器端发送请求,服务器端返回应答。HTTP请求和响应的格式如下(请参照附录三):格式说明=. . .HTTP协议头和内容之间必须有一个空行如果HTTP通信出错(比如所请求的URL不存在),则没有内容部分每个

39、参数占一行,所有的参数名称和参数值都为文本类型每行都要以回车/换行结束表4-1 HTTP的消息格式4.1.1Submit操作在SP和SMG的通信中,SP用Submit命令向SMG提交MT短消息,SMG返回响应。4.1.1.1Submit命令的请求内容参数名称说明CommandId*命令ID,十六进制数字SequenceNumber序列号,十六进制数字SPNumberSP的接入号码,字符ChargeNumber付费号码,字符,手机号码前加“86”国别标志;当且仅当群发且对用户收费时为空;如果为空,则该条短消息产生的费用由UserNumber代表的用户支付;如果为全零字符串“00000000000

40、0000000000”,表示该条短消息产生的费用由SP支付。UserNumber一个或多个接收该短消息的手机号,手机号之间用逗号(,)隔开,字符,手机号码前加“86”国别标志,如8613001125453,8613001132345CorpId企业代码,取值范围0-99999,字符ServiceType业务代码,由SP定义,字符FeeType*计费类型,字符FeeValue取值范围0-99999,该条短消息的收费值,单位为分,由SP定义,字符对于包月制收费的用户,该值为月租费的值GivenValue取值范围0-99999,赠送用户的话费,单位为分,由SP定义,特指由SP向用户发送广告时的赠送话

41、费,字符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

42、个字符,格式为“yymmddhhmmsstnnp”,其中“tnnp”取固定值“032+”,即默认系统为北京时间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位

43、,右对齐十六进制数字MessageCoding短消息的编码格式。0:纯ASCII字符串3:写卡操作4:二进制编码8:UCS2编码15:GBK编码其它参见GSM3.38第4节:SMS Data Coding Scheme十六进制数字MessageContent短消息的内容,十六进制数字Reserve保留,扩展用*注1:消息ID定义在5.1中;*注2:计费类型定义在5.3中。表4-2 Submit命令的请求格式4.1.1.2Submit命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultSubmit命令是否成功接收。十六进制数字

44、0:接收成功其它:错误码*Reserve保留,扩展用*注:错误码定义在5.2中表4-3 Submit命令的应答格式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发送该短

45、消息的手机号,字符,手机号码前加“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节:SMS Data Coding Scheme十六进制数字MessageContent短消息的内容,十六进制数字Reserve保留,扩展用表4-4 D

46、eliver命令的请求格式4.1.2.2Deliver命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultDeliver命令是否成功接收。十六进制数字0:接收成功其它:错误码Reserve保留,扩展用表4-5 Deliver命令的应答格式4.1.3Report操作Report命令用于向SP发送一条先前的Submit命令的当前状态。4.1.3.1Report命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SubmitSequenceNumber该命令所涉及的Su

47、bmit或deliver命令的序列号,十六进制数字ReportTypeReport命令类型0:对先前一条Submit命令的状态报告1:对先前一条前转Deliver命令的状态报告,十六进制数字UserNumber接收该短消息的手机号,字符,手机号码前加“86”国别标志State*该命令所涉及的短消息的当前执行状态0:发送成功1:等待发送2:发送失败十六进制数字ErrorCode当State=2时为错误码值,否则为0,十六进制数字Reserve保留,扩展用表4-6 Report命令的请求格式*注:当report反馈的是短消息中心的状态报告时,state的三种状态与短消息状态报告中的状态的对应关系见

48、5.4 report状态与短消息状态的映射。4.1.3.2Report命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultReport命令是否成功接收。十六进制数字0:接收成功其它:错误码Reserve保留,扩展用表4-7 Report命令的应答格式4.1.4UserRpt操作UserRpt命令用于在完成对用户鉴权后,由SMG向手机用户所注册的SP发送命令,对手机用户进行状态配置。4.1.4.1UserRpt命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SP

49、NumberSP的接入号码,字符UserNumber待配置的手机号码,字符,手机号码前加“86”国别标志UserCondition十六进制数,0:注销;1:欠费停机;2:恢复正常Reserve保留,扩展用表4-8 UserRpt命令的请求格式4.1.4.2UserRpt命令的应答内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字ResultUserRpt命令执行结果0:成功其它:错误码Reserve保留,扩展用表4-9 UserRpt命令的应答格式4.1.5Trace操作Trace命令用于向SMG请求跟踪某一条MT短消息的状态。4.1.5.

50、1Trace命令的请求内容参数名称说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字SubmitSequenceNumber被跟踪MT短消息的命令序列号,十六进制数字UserNumber被跟踪MT短消息的目的手机号,字符,手机号码前加“86”国别标志Reserve保留,扩展用表4-10 Trace命令的请求格式4.1.5.2Trace命令的应答内容字段说明CommandId命令ID,十六进制数字SequenceNumber序列号,十六进制数字Count被跟踪MT短消息经过的节点个数,当被跟踪短消息经过多个节点时,以下各个字段可重复ResultTrace

51、命令在该节点是否成功接收。十六进制数字0:接收成功1:等待处理其它:错误码NodeId节点编号,字符ReceiveTime被跟踪的短消息到达该节点时刻,格式为“yymmddhhmmss”SendTime该节点发出被跟踪的短消息时刻,格式为“yymmddhhmmss”Reserve保留,扩展用,当被跟踪短消息经过多个节点时,以上各个字段可重复表4-11 Trace命令的应答格式4.2基于专用SGIP的消息定义专用SGIP协议中定义的消息由消息头和消息体组成。项目说明消息头消息头部分消息体消息体部分表4-12消息的组成4.2.1数据类型消息中利用到如下数据类型类型说明Integer 无符号整数Te

52、xt定长字符串,左对齐存储,空余位置补0表4-13消息的数据类型消息中的所有Integer类型的字段均采用网络字节顺序。所有消息中的序列号字段均占12个字节,分为3个4字节整数;通信传输时每个整数都使用网络字节顺序,但整数的次序并不改变。也就是说,通信传输的时候,序列号字段应该按照三个连续的4字节整数来处理。4.2.2消息头的格式字段长度(字节)类型说明Message Length4Integer消息的总长度(字节)Command ID4Integer命令IDSequence Number12Integer序列号表4-14消息头的格式4.2.3消息体的格式4.2.3.1Bind操作Bind操作

53、由Bind命令和Bind_Resp应答组成。客户端首先发送Bind命令,服务器端收到Bind命令后,对命令发送方进行验证,然后返回Bind_Resp应答。4.2.3.1.1Bind命令的语法字段长度(字节)类型说明Login Type1Integer登录类型。1:SP向SMG建立的连接,用于发送命令2:SMG向SP建立的连接,用于发送命令3:SMG之间建立的连接,用于转发命令4:SMG向GNS建立的连接,用于路由表的检索和维护5:GNS向SMG建立的连接,用于路由表的更新6:主备GNS之间建立的连接,用于主备路由表的一致性11:SP与SMG以及SMG之间建立的测试连接,用于跟踪测试其它:保留L

54、ogin Name16Text服务器端给客户端分配的登录名Login Passowrd16Text服务器端和Login Name对应的密码Reserve8Text保留,扩展用表4-15 Bind消息格式4.2.3.1.2Bind_Resp应答的语法字段长度(字节)类型说明Result1IntegerBind执行命令是否成功。0:执行成功其它:错误码Reserve8Text保留,扩展用表4-16 Bind_Resp消息格式4.2.3.2Unbind操作Unbind操作由Unbind命令和Unbind_Resp应答组成。通信连接建立以后,客户端如果要停止通信,需要发送Unbind命令;服务器端收到

55、Unbind命令后,向客户端发送Unbind_Resp相应,然后双方断开连接。4.2.3.2.1Unbind命令的语法Unbind命令没有消息体。4.2.3.2.2Unbind_Resp应答的语法Unbind_Resp应答没有消息体。4.2.3.3Submit操作在SP和SMG的通信中,SP用Submit命令向SMG提交MT短消息,发送到用户的手机中。SMG接收到Submit命令,会返回Submit_Resp应答。SMG根据Submit命令中的付费号码,判断出该命令是否应从本地SMSC发送,如果属于本地发送,则直接发送到相应的SMSC,否则路由至相应的SMG。在SMG和SMG的通信中,Subm

56、it命令用于SMG客户端向服务器端路由从SP收到的MT短消息。服务器端接收到Submit命令后,再发送到与之相连的目的SMSC。4.2.3.3.1Submit命令的语法字段长度(字节)类型说明SPNumber21TextSP的接入号码ChargeNumber21Text付费号码,手机号码前加“86”国别标志;当且仅当群发且对用户收费时为空;如果为空,则该条短消息产生的费用由UserNumber代表的用户支付;如果为全零字符串“000000000000000000000”,表示该条短消息产生的费用由SP支付。UserCount1Integer接收短消息的手机数量,取值范围1至100UserNum

57、ber21Text接收该短消息的手机号,该字段重复UserCount指定的次数,手机号码前加“86”国别标志CorpId5Text企业代码,取值范围0-99999ServiceType10Text业务代码,由SP定义FeeType1Integer计费类型FeeValue6Text取值范围0-99999,该条短消息的收费值,单位为分,由SP定义对于包月制收费的用户,该值为月租费的值GivenValue6Text取值范围0-99999,赠送用户的话费,单位为分,由SP定义,特指由SP向用户发送广告时的赠送话费AgentFlag1Integer代收费标志,0:应收;1:实收MorelatetoMTF

58、lag1Integer引起MT消息的原因0-MO点播引起的第一条MT消息;1-MO点播引起的非第一条MT消息;2-非MO点播引起的MT消息;3-系统反馈引起的MT消息。Priority1Integer优先级0-9从低到高,默认为0ExpireTime16Text短消息寿命的终止时间,如果为空,表示使用短消息中心的缺省值。时间内容为16个字符,格式为”yymmddhhmmsstnnp” ,其中“tnnp”取固定值“032+”,即默认系统为北京时间ScheduleTime16Text短消息定时发送的时间,如果为空,表示立刻发送该短消息。时间内容为16个字符,格式为“yymmddhhmmsstnnp

59、” ,其中“tnnp”取固定值“032+”,即默认系统为北京时间ReportFlag1Integer状态报告标记0-该条消息只有最后出错时要返回状态报告1-该条消息无论最后是否成功都要返回状态报告2-该条消息不需要返回状态报告3-该条消息仅携带包月计费信息,不下发给用户,要返回状态报告其它-保留缺省设置为0TP_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节:S

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!