CN102487493B - 短消息处理方法和国际互通网关 - Google Patents
短消息处理方法和国际互通网关 Download PDFInfo
- Publication number
- CN102487493B CN102487493B CN200910178345.5A CN200910178345A CN102487493B CN 102487493 B CN102487493 B CN 102487493B CN 200910178345 A CN200910178345 A CN 200910178345A CN 102487493 B CN102487493 B CN 102487493B
- Authority
- CN
- China
- Prior art keywords
- short message
- message
- short
- splits
- length
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种短信处理方法及国际互通网关。其中,该方法包括国际互通网关接收国内用户发给国外用户的短消息;国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;当接收到的短消息的长度大于国外用户支持的单条短消息的长度时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分。本发明在国际互通网关将从国内发送至国外的短消息进行了分拆,将长短消息变为较短的两条或多条短消息,从而能够顺利穿过国外的短消息网络,这样国外用户接收到的短消息将不再被截短或丢失,因而国外的被叫用户可以收到内容完整的短消息。
Description
技术领域
本发明涉及移动通信技术领域,更具体地,涉及一种短消息处理方法和国际互通网关。
背景技术
国际短消息业务是指国内用户(例如,CDMA用户、小灵通用户、家家e用户或SIP软电话用户)发送短消息给国外用户或接收来自国外用户的短消息业务,其实现是依靠国际转接商短消息网关设备和短消息国际互通网关的互联互通实现的。国内用户发送到国外用户的短消息经国际互通网关到达国际转接商短消息网关设备,由国际转接商短消息网关设备将短消息转发至被叫用户所属的短消息网络,并最终发送至被叫用户的终端上;反之,国内用户接收来自国外用户的短消息时同样由国际转接商短消息网关设备转发到短消息国际互通网关,再由国际互通网关路由到被叫用户归属的短消息网络,并最终发送到被叫用户的终端上。
由于国际转接商短消息网关设备或某些国外地区的短消息设备所支持的短消息长度小于国内相关设备或手机支持的短消息长度,因而会造成国外用户接收国内用户发送的短消息时产生截短、乱码或丢失等问题。
为解决上述问题,可以协调国外相关网络进行升级,但实现难度很大,另外还可以告知国内用户向国外发送短消息时不要过长,但是也不具有较高的可实现性。
发明内容
本发明要解决的一个技术问题是提供一种短消息处理方法,能够使国外用户收到内容完整的短消息。
本发明提供了一种短消息处理方法,包括国际互通网关接收国内用户发给国外用户的短消息;国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;当接收到的短消息的长度大于国外用户支持的单条短消息的长度时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分。
根据本发明方法的一个实施例,在国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较的步骤之前,方法还包括:根据国外用户支持的目标编码方式判断接收到的短消息是否需要进行编码方式转换;在确定需要进行编码方式转换的情况下,对接收到的短消息进行对应的编码转换;将编码转换后的短消息的长度作为接收到的短消息的长度进行后续处理。
根据本发明方法的另一实施例,当国际互通网关接收到原始短消息经一次拆分后的多条短消息时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分的步骤包括:根据N=ceil[(OL-OMHL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,ON为原始短消息经一次拆分后的多条短消息的个数。
根据本发明方法的又一实施例,短消息为文本短消息,当国际互通网关接收到原始短消息经一次拆分后的多条短消息时,在接收到的短消息需要进行编码方式转换的情况下,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分的步骤包括:根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为国外用户支持的单条短消息中一个字符的编码长度,OCL为接收到的单条短消息中一个字符的编码长度,ON为原始短消息经一次拆分后的多条短消息的个数。
根据本发明方法再一实施例,当短消息为数据短消息时,方法还包括:去除接收到的单条短消息中的原始消息头,并对串接消息头的标志位进行复位;根据NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新消息头的起始编号NMH,其中,OMH为接收到的单条短消息的原始消息头,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;在二次拆分后,将二次拆分后的短消息的新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH递增后串接到二次拆分后的其他短消息中,并对串接消息头的标志位进行置位。
根据本发明方法的再一实施例,当短消息为文本短消息时,方法还包括:去除接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为接收到的单条短消息的原始消息头/原始序号,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;在二次拆分后,将二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH/起始序号NSQ递增后串接到二次拆分后的其他短消息中,并对串接消息头/序号的标志位进行置位;如果二次拆分后的短消息中无内容,则插入提示信息。
本发明提供的短消息处理方法,在国际互通网关将从国内发往国外的短消息进行了分拆,将长短消息变为两条或多条较短的短消息,从而能够顺利穿过国外的短消息网络,这样国外用户接收到的短消息将不再被截短或丢失,因此国外的被叫用户可以收到内容完整的短消息。
进一步,国际互通网关在接收到单条短消息后直接进行二次拆分,而不等待收齐所有经一次拆分的短消息后再统一进行二次拆分,可以大大减小处理短消息的时延。
本发明要解决的另一技术问题是提供一种国际互通网关,能够使国外用户收到内容完整的短消息。
本发明还提供了一种国际互通网关,包括:短消息接收模块,用于接收国内用户发给国外用户的短消息;短消息长度比较模块,用于将短消息接收模块接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;短消息拆分模块,用于在短消息长度比较模块确定接收到的短消息的长度大于国外用户支持的单条短消息的长度的情况下,根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分。
根据本发明国际互通网关的一个实施例,国际互通网关还包括:编码转换判断模块,用于根据国外用户支持的目标编码方式判断短消息接收模块接收到的短消息是否需要进行编码方式转换;编码转换模块,用于在编码转换判断模块确定需要进行编码方式转换的情况下对接收到的短消息进行对应的编码转换,并将编码转换后的短消息的长度作为接收到的短消息的长度进行后续处理。
根据本发明国际互通网关的另一实施例,短消息拆分模块包括:消息个数确定单元,用于在短消息接收模块接收到原始短消息经一次拆分后的多条短消息的情况下,根据N=ceil[(OL-OMHL)/(L-NMHL)]计算短消息接收模块接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;消息总数确定单元,用于根据SN=N*ON和消息个数确定单元确定的接收到的单条短消息经二次拆分后的短消息个数N计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;短消息二次拆分单元,用于根据消息个数确定单元确定的接收到的单条短消息经二次拆分后的短消息个数N和消息总数确定单元确定的原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,ON为原始短消息经一次拆分后的多条短消息的个数。
根据本发明国际互通网关的又一实施例,短消息拆分模块包括:文本消息个数确定单元,用于在短消息接收模块接收到原始短消息经一次拆分后的多条短消息并且编码转换判断模块确定需要进行编码方式转换的情况下,根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算短消息接收模块接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;文本消息总数确定单元,用于根据SN=N*ON和文本消息个数确定单元确定的接收到的单条短消息经二次拆分后的短消息个数N计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;文本短消息二次拆分单元,用于根据文本消息个数确定单元确定的接收到的单条短消息经二次拆分后的短消息个数N和文本消息总数确定单元确定的原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为国外用户支持的单条短消息中一个字符的编码长度,OCL为接收到的单条短消息中一个字符的编码长度,ON为原始短消息经一次拆分后的多条短消息的个数。
根据本发明国际互通网关的再一实施例,国际互通网关还包括:消息头去除模块,用于去除短消息接收模块接收到的单条短消息中的原始消息头,并对串接消息头的标志位进行复位;消息头确定模块,用于根据NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新消息头的起始编号NMH,其中,OMH为接收到的单条短消息的原始消息头,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;消息头插入模块,用于在二次拆分后,将消息头确定模块确定的二次拆分后的短消息的新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH递增后串接到二次拆分后的其他短消息中,并对串接消息头的标志位进行置位。
根据本发明国际互通网关的再一实施例,国际互通网关还包括:文本消息头去除模块,用于去除短消息接收模块接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;文本消息头确定模块,用于根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为接收到的单条短消息的原始消息头/原始序号,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;文本消息头插入模块,用于在二次拆分后,将文本消息头确定模块确定的二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH/起始序号NSQ递增后串接到二次拆分后的其他短消息中,并对串接消息头/序号的标志位进行置位;提示信息插入模块,用于在二次拆分后的短消息中无内容的情况下,插入提示信息。
本发明提供的国际互通网关,由短消息长度比较模块对短消息接收模块接收到的发往国外用户的短消息与国外用户支持的单条短消息的长度进行比较,在大于国外用户支持的单条短消息的长度的情况下由短消息拆分模块对国内用户发往国外用户的长短消息进行拆分,使得拆分后的每条较短的短消息都能顺利地穿过国外短消息网络,这样国外用户接收到的短消息将不再被截短或丢失,因此国外的被叫用户可以收到内容完整的短消息。
进一步,国际互通网关在接收到单条短消息后直接进行二次拆分,而不等待收齐所有经一次拆分后的短消息再统一进行二次拆分,可以大大减小处理短消息的时延。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分。在附图中:
图1是实现本发明的一个系统的结构示意图。
图2是本发明方法的一个实施例的流程示意图。
图3是本发明方法的另一实施例的流程示意图。
图4是本发明方法的又一实施例的流程示意图。
图5是本发明方法的再一实施例的流程示意图。
图6是本发明国际互通网关一个实施例的结构示意图。
图7是本发明国际互通网关另一实施例的结构示意图。
图8是本发明国际互通网关又一实施例的结构示意图。
图9是本发明国际互通网关又一实施例的结构示意图。
图10是本发明国际互通网关再一实施例的结构示意图。
图11是本发明国际互通网关再一实施例的结构示意图。
图12是本发明国际互通网关的再一实施例的结构示意图。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。本发明的示例性实施例及其说明用于解释本发明,但并不构成对本发明的不当限定。
对于从国内用户发往国外用户的国际短消息,本发明提出在国际互通网关对接收到的长短消息进行拆分,使得国外用户能够接收到内容完整的短消息。
图1是实现本发明的一个系统的结构示意图。
如图1所示,包括国内主叫用户A、短消息中心11、短消息网关12、国际互通网关13、国际转接商网关14、国外短消息网络15以及国外被叫用户B。当国内用户A作为主叫用户向国外被叫用户B发送短消息时,通常是经由短消息中心11、短消息网关12、国际互通网关13及国际转接商网关14到达国外短消息网络15,并最终到达国外被叫用户B。
当国外被叫用户B支持的单条短消息的长度小于国内主叫用户A支持的单条短消息的长度时,本发明根据国外被叫用户B所支持的短消息长度由国际互通网关13对国内主叫用户A发往国外被叫用户B的短消息进行拆分以保证国外被叫用户B能够接收到内容完整的短消息。
进一步,在有些情况下由于国外被叫用户B所支持的目标编码方式不同于国内主叫用户A所支持的源编码方式,所以由国际互通网关将源编码方式转为目标编码方式。在发送国际短消息时,具体地可以设计一个按不同国际方向采用不同的源编码和目标编码的转换关系配置表,根据该转换关系配置表进行编码方式的转换。另外,当国内用户所支持的源编码方式不在编解码转换关系配置表中时,不对源编码进行转换,只进行短消息的拆分。
图2是本发明方法的一个实施例的流程示意图。
如图2所示,该实施例包括以下步骤:
S202,国际互通网关接收国内用户发给国外用户的短消息,该短消息可以是未经一次拆分的原始短消息,也可以是原始短消息例如在短消息中心经一次拆分后的多条短消息。
S204,国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较,在比较之前,国际互通网关对发往不同方向的短消息设置不同的拆分长度门限L1-Ln,例如,L为140个字节。
S206,当接收到的短消息的长度大于国外用户支持的单条短消息的长度时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分,当所有拆分后的短消息均发送成功后才认为原始短消息发送成功,并向上级网元返回成功状态报告。
该实施例在国际互通网关将从国内发往国外的短消息进行了拆分,将长短消息变为两条或多条较短的短消息,从而能够顺利穿过国外短消息网络,这样国外用户接收到的短消息将不再被截短或丢失,因此国外的被叫用户可以收到内容完整的短消息。
另外,根据本发明的一个实施例,国际互通网关在接收到单条短消息后直接进行二次拆分,而不等待收齐所有经一次拆分后的短消息再统一进行二次拆分,可以大大减小处理短消息的时延。
图3是本发明方法的另一实施例的流程示意图。
如图3所示,该实施例包括以下步骤:
S302,国际互通网关接收国内用户发给国外用户的短消息,该短消息可以是未经一次拆分的原始短消息,也可以是原始短消息经一次拆分后的多条短消息;
S304,根据国外用户支持的目标编码方式判断接收到的短消息是否需要进行编码方式转换,如果国内用户支持的源编码方式与国外用户支持的目标编码方式相同,则确定不需要进行编码方式转换,否则如果国内用户支持的源编码方式存在于编码转换关系配置表中,则确定需要进行编码方式转换,当国内用户支持的源编码方式不存在于编码转换关系配置表中时,确定不需要进行编码方式转换,其中,该编码转换关系配置表的一个实例可以包括被叫号码的字冠和目标编码方式,例如,0081xxxx,UCS2-------xxxx表示具体运营商归属的号段,诸如NTT公司的小灵通用户号段;
S306,在确定需要进行编码方式转换的情况下,根据编码转换关系配置表对接收到的短消息进行对应的编码转换,即,将国内用户支持的源编码方式转换为国外用户支持的目标编码方式,另外,考虑到不同编码方式的短消息在拆分中可能会出现拆分半字符的情况,国际互通网关支持对不同编码方式的字符进行拆分,拆分后的短消息所含的字符均完整;对于原始短消息在国内用户端发出时经一次拆分后出现的半字符现象,因为原始短消息经一次拆分的短消息携带消息头,如果网络透传,则国外用户在整合为一条短消息时,在端到端消除了半字符,但是国际互通网关接收到的短消息的内容头部或尾部出现半字符,在不合成为原始长短消息的情况下,国际互通网关去除经一次拆分的短消息的消息头再进行二次拆分后插入序号的方式会导致国外用户收到的短消息显示为乱码,而产生这种现象的原因在于国内用户经一次拆分后出现了半字符现象,因此国际互通网关应对此现象保存原始信令并进行一定级别的告警;无论采用何种编码方式,短消息拆分后插入的序号格式可以为例如(b/a)的ASCII字符,其中,b为消息头中的消息序号,a为消息头中表示该长短消息拆分后的条数,如果拆分为三条的短消息,其序号为(1/3)、(2/3)、(3/3);
S308,将编码转换后的短消息的长度作为接收到的短消息的长度进行后续处理;
S310,国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;
S312,当接收到的短消息的长度大于国外用户支持的单条短消息的长度时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分。
例如,国际互通网关接收到的短消息可以是数据短消息也可以是文本短消息,当国际互通网关接收到原始短消息经一次拆分后的多条短消息时,国际互通网关根据N=ceil[(OL-OMHL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,ON为原始短消息经一次拆分后的多条短消息的个数。
在该实例中,经过国际互通网关拆分后的数据短消息或文本短消息可以顺利地通过国外短消息网络而不被截短,从而可以保证国外用户能够收到内容完整的短消息。
在另一具体实例中,国际互通网关接收到的短消息为文本短消息,当国际互通网关接收到原始短消息经一次拆分后的多条短消息时,在接收到的短消息需要进行编码方式转换的情况下,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分的步骤包括:根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为国外用户支持的单条短消息中一个字符的编码长度,OCL为接收到的单条短消息中一个字符的编码长度,ON为原始短消息经一次拆分后的多条短消息的个数。
在该实例中,当发往国外用户的短消息为文本短消息,并且短消息的源编码方式与目标编码方式不一致时,可以通过编码方式转换以及短消息的拆分来保证国外用户能收到内容正确且完整的短消息。
图4是本发明方法的又一实施例的流程示意图。
如图4所示,当国际互通网关接收到的短消息为数据短消息(例如,二进制的数据短消息)时,该实施例包括以下步骤:
S402,国际互通网关接收国内用户发给国外用户的短消息,该短消息可以是未经一次拆分的原始短消息,也可以是原始短消息经一次拆分后的多条短消息;
S404,去除接收到的单条短消息中的原始消息头,并对串接消息头的标志位进行复位;
S406,根据国外用户支持的目标编码方式判断接收到的短消息是否需要进行编码方式转换,如果国内用户支持的源编码方式与国外用户支持的目标编码方式相同,则确定不需要进行编码方式转换,否则如果国内用户支持的源编码方式存在于编码转换关系配置表中,则确定需要进行编码方式转换,当国内用户支持的源编码方式不存在于编码转换关系配置表中时,确定不需要进行编码方式转换;
S408,在确定需要进行编码方式转换的情况下,对接收到的短消息进行对应的编码转换,即,将国内用户支持的源编码方式转换为国外用户支持的目标编码方式;
S410,将编码转换后的短消息的长度作为接收到的短消息的长度进行后续处理;
S412,国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;
S414,当接收到的短消息的长度大于国外用户支持的单条短消息的长度时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分,例如,根据N=ceil[(OL-OMHL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,ON为原始短消息经一次拆分后的多条短消息的个数;
S416,根据NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新消息头的起始编号NMH,其中,OMH为接收到的单条短消息的原始消息头,例如,1/3;
S418,在二次拆分后,将二次拆分后的短消息的新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,根据计算出的经二次拆分后的短消息个数N依次递增新消息头的起始编号NMH,将递增后的结果对应地填充到二次拆分后的其他短消息中,并对串接消息头的标志位进行置位。
该实施例在国际互通网关接收到的短消息为数据短消息时,经二次拆分后,将新的消息头串接到二次拆分后的短消息中,当国外用户接收到这些短消息后,能够根据消息头获知这些短消息的顺序,从而可以得到内容完整且正确的短消息。
图5是本发明方法的再一实施例的流程示意图。
如图5所示,当国际互通网关接收到的短消息为文本短消息时,该实施例包括以下步骤:
S502,国际互通网关接收国内用户发给国外用户的短消息,该短消息可以是未经一次拆分的原始短消息,也可以是原始短消息经一次拆分后的多条短消息;
S504,去除接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;
S506,根据国外用户支持的目标编码方式判断接收到的短消息是否需要进行编码方式转换,如果国内用户支持的源编码方式与国外用户支持的目标编码方式相同,则确定不需要进行编码方式转换,否则如果国内用户支持的源编码方式存在于编码转换关系配置表中,则确定需要进行编码方式转换,当国内用户支持的源编码方式不存在于编码转换关系配置表中时,确定不需要进行编码方式转换;
S508,在确定需要进行编码方式转换的情况下,对接收到的短消息进行对应的编码转换,即,将国内用户支持的源编码方式转换为国外用户支持的目标编码方式;
S510,将编码转换后的短消息的长度作为接收到的短消息的长度进行后续处理;
S512,国际互通网关将接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;
S514,当接收到的短消息的长度大于国外用户支持的单条短消息的长度时,国际互通网关根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分;
具体地,如果确定需要进行编码方式的转换,可以通过如下步骤进行短消息的拆分:
根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为国外用户支持的单条短消息中一个字符的编码长度,OCL为接收到的单条短消息中一个字符的编码长度,ON为原始短消息经一次拆分后的多条短消息的个数;
如果确定不需要进行编码方式的转换,则可以通过如下步骤进行短消息的拆分:
根据N=ceil[(OL-OMHL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;根据SN=N*ON计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;根据接收到的单条短消息经二次拆分后的短消息个数N和原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,ON为原始短消息经一次拆分后的多条短消息的个数;
S516,根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为接收到的单条短消息的原始消息头/原始序号,例如,(1/3)、(2/3)、(3/3)的单级序号;1/3、2/3、3/3的消息头;
S518,在二次拆分后,将二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,根据计算出的经二次拆分后的短消息个数N依次递增新消息头的起始编号NMH/新序号的起始序号NSQ,将递增后的结果对应地填充到二次拆分后的其他短消息中,并对串接消息头/序号的标志位进行置位;
S520,如果二次拆分后的短消息中无内容,则插入提示信息以避免为空短消息,所插入的提示信息可以为运营商方面的提示信息,例如,在遇到空短消息时可以插入“中国电信”等不会误导用户的提示信息。
该实施例在国际互通网关接收到的短消息为文本短消息时,经二次拆分后,将新的消息头/新序号串接到二次拆分后的短消息中,国外用户接收到这些短消息后,能够根据新消息头/新序号的顺序阅读这些短消息,从而为国外用户阅读短信提供了便利性。
接下来将介绍本发明方法的再一实施例的拆分处理过程。具体地,将分别阐述对有/无消息头的文本短消息以及有/无消息头的数据短消息的拆分过程。
一、无消息头的文本短消息的拆分
(1)如果国际互通网关接收到的短消息的源编码方式与国外用户支持的目标编码方式一致,并且接收到的国内用户的短消息的长度不大于国外用户支持的单条短消息的长度L个字节,则不进行短消息的拆分,此时用户无感知。
(2)如果国际互通网关接收到的短消息的源编码方式与国外用户支持的目标编码方式不一致,首先需要将源编码方式的短消息转换为目标编码方式的短消息,然后再判断编码转换后的目标编码方式的短消息的长度是否大于国外用户支持的单条短消息的长度L个字节,如果不大于,则不进行短消息的拆分。
(3)如果编码转换后的目标编码方式的短消息的长度大于国外用户支持的单条短消息的长度L个字节,则由国际互通网关根据配置的长度L、国内用户支持的源编码方式以及国外用户支持的目标编码方式共同确定拆分后的短消息的数目,在每条拆分后的短消息前插入目标编码方式的5字符的序号,例如,(1/3),国际互通网关支持在编码转换过程中出现短消息内容长度发生变化的情况。
二、有消息头的文本短消息的拆分
国际互通网关能够根据接收到的当前短消息携带的消息头获取原始短消息经一次拆分后的消息条数和该条短消息的序号,并依据国外用户支持的单条短消息的长度L(例如,140字节)、接收到的短消息的源编码方式和目标编码方式计算出国际互通网关经二次拆分后的短消息数。另外,对于服务提供商发出的携带消息头的不均匀拆分的短消息,国际互通网关保存信令纪录并进行一定级别的告警,同时按以下原则进行拆分:
假设:
原始短消息经一次拆分后的携带消息头的短消息长度(第一个分包长度)为OL个字节;当前短消息的消息头中显示的短消息数为ON;
则:
原始短消息经一次拆分后的携带消息头的短消息经二次拆分后的短消息数N=(OL-6字节的消息头长度)/(L-序号字符数*目标编码对应的字符长度)
原始短消息经二次拆分后的短消息总数SN=N*ON
当前短消息经二次拆分后的起始序号SQ=[(当前短消息的消息头中携带的序号-1)*N+1]/SN
其中,当前短消息不是原始短消息经一次拆分后的最后一条短消息。
对于携带消息头的GB类编码的短消息(OL固定为280),考虑到存在单字节和双字节编码混合并存的情况,国际互通网关对接收到的每个经一次拆分的携带消息头的短消息计算拆分后的短消息数,然后将经一次拆分的消息内容基本平均地填充到各个二次拆分后的短消息中,对于最后一条一次拆分后的短消息的字符数可能比较少,可不均匀地拆分,而集中放在二次拆分后的第一条短消息中,其后的短消息可以填充提示信息。
对于原始短消息经一次拆分的最后一条短消息,无论其长度多短,拆分数均等同于当前短消息的拆分数,即,国际互通网关对相同的同一条长短消息中的各条短消息的拆分数相同。原始短消息经一次拆分的最后一条短消息,在二次拆分后如果其内容在第一条即填充完毕,则其后的其他二次拆分短消息不能为空,按条对每条二次拆分后的短消息以目标编码方式填写提示信息,同时按目标编码方式插入序号,提示信息的长度在二次拆分后的短消息能承载的范围内。
例如,原始短消息经一次拆分后为两条短消息的长短消息,按80个字节进行拆分,计算新的拆包长度为4,这样国际互通网关下发消息时对于第一条短消息拆分成的两个子包分别添加序号(1/4)、(2/4)。对于第二条短消息的处理视第二条短消息的长度情况而定:如果第二条短消息的长度可以拆成两个包,则按第一条短消息的方式拆分,并分别填写序号(3/4)、(4/4);如果第二条短消息的长度不够拆分成两条短消息,则为原第二条短消息增加序号(3/4),由国际互通网关自动新增序号为(4/4)的一条短消息,该短消息的内容按目标编码方式填写提示信息。
需要注意的是,携带消息头的短消息的拆分和编码转换过程同样不能按字节拆分应按字符拆分,在拆分后再加入序号的过程中,国际互通网关需要充分考虑采用GBK或UCS-2编码方式的短消息进行拆分时不能出现半字等问题,以防止出现乱码。
三、无消息头的数据短消息的拆分
对于数据短消息,一般无需用户阅读,而是由接收方,即国外用户根据电信服务ID进行数据解析和相应的业务处理,如果采用文本短消息加入序号的方式,将导致接收方无法解析和处理数据短消息,考虑到支持数据短消息的国外用户支持长短消息的可能性更大,因此对于数据短消息的拆分需要插入正常的消息头,并置位消息标志。
(1)如果国际互通网关接收到的短消息的长度不大于国外用户支持的单条短消息的长度L个字节,则不进行拆分,此时用户无感知。
(2)如果国际互通网关接收到的短消息的长度大于国外用户支持的单条短消息的长度L,则根据L对接收到的短消息进行拆分,同时构造拆分后的新消息头,国外用户收到短消息后能自动合并成一条。
四、有消息头的数据短消息的拆分
对于有消息头的数据短消息的拆分原则同有消息头的文本短消息的拆分,不同点是不插入序号而插入消息头。
如果当前短消息不是原始短消息经一次拆分的最后一条短消息,则先根据L判断每条一次拆分后的短消息需要二次拆分的短消息条数(例如,2条或3条),再根据消息头判断二次拆分后的短消息中需要构造的消息头,并删除原先的消息头。
例如,拆成2条的情况:如果消息头为1/2,则拆分后的2条短消息的消息头分别为1/4和2/4;如果消息头为1/3,则拆分后的2条短消息的消息头分别为1/6和2/6;如果消息头为2/3,则拆分后的2条短消息的消息头分别为3/6和4/6。拆成3条的情况:如果消息头为1/2,则拆分后的3条短消息的消息头分别为1/6、2/6和3/6;如果消息头为1/3,则拆分后的3条短消息的消息头分别为1/9、2/9和3/9;如果消息头为2/3,则拆分后的3条短消息的消息头分别为4/9、5/9和6/9。
如果当前短消息为原始短消息经一次拆分的最后一条短消息,则规则同上面,其区别是:均匀填充到各条二次拆分后的短消息中,如果字节数过少不能分配到各条短消息中则只插入消息头,其后内容为空,这样国外用户收到后能进行自动合并,可忽略内容为空的短消息。
需要说明的是,国际互通网关对于消息头不符合规范的情况(即,异常消息头),对于文本短消息则去除消息头,二次拆分后不插入序号或消息头。对于携带异常消息头的数据短消息则作丢弃处理,保存原始信令并进行一定级别的告警。另外,对于直观显示为图片的文本短消息,由于国际互通网关无法根据短消息文字的组合判断是否含有组合图案,因此在进行国际短消息的拆分处理时不予考虑。
以下再通过一个具体实例来描述二次拆分的具体过程。
中国电信支持长短消息,例如,CDMA用户发送给日本NTT小灵通用户一条161个英文字符的短消息,该CDMA用户的终端采用7bit ASC字符的编码方式(MAP:MSG_Coding=0),国际互通网关配置发往日本方向的编码方式为UCS2,拆分门限(即,日本用户支持的单条短消息的长度)为116字节。CDMA用户终端采用7bit的编码方式对161个英文字母的短消息进行编码,在CDMA用户侧被拆分为两条:153个和8个英文字母的短消息,短信中心将该短消息转换为8bit ASC的编码方式(SMPP:DCS=4),第一短消息变为159个字节(其中,含6字节的消息头和153个英文字母),第二条短消息变为14个字节的短消息,这两条短消息再经过若干短信网络节点设备最终发送给国际互通网关。国际互通网关收到后,先分析消息头,得到关联短信为2条,去除消息头,根据被叫字冠匹配目标编码方式,然后根据匹配出的目标编码方式进行编码转换,转换后的第一条短消息为306个字节的UCS2编码方式短消息,第二条短消息为16个字节的UCS2编码方式短消息,根据设定的116个字节的拆分门限,原始短消息经二次拆分后变为6条短消息,不含消息头的短信内容的长度分别为110、110、86、16、0、0,其对应的完整的短消息字节数为116、116、92、22、6、6的6条UCS2编码方式的短消息。
图6是本发明国际互通网关一个实施例的结构示意图。
如图6所示,该国际互通网关包括短消息接收模块61,用于接收国内用户发给国外用户的短消息,该短消息可以是未经一次拆分的原始短消息,也可以是原始短消息经一次拆分后的多条短消息;短消息长度比较模块62,用于将短消息接收模块61接收到的短消息的长度与国外用户支持的单条短消息的长度进行比较;短消息拆分模块63,用于在短消息长度比较模块62确定接收到的短消息的长度大于国外用户支持的单条短消息的长度的情况下,根据国外用户支持的单条短消息的长度对接收到的短消息进行拆分,当所有拆分后的短消息均发送成功后才认为短消息发送成功,并向上级网元返回成功状态报告。
该实施例将从国内发送至国外的短消息进行了拆分,将长短消息变为两条或多条较短的短消息,从而能够顺利穿过国外的短消息网络,这样国外用户接收到的短消息将不再被截短或丢失,因而国外的被叫用户可以收到内容完整的短消息。
另外,根据本发明的一个实施例,国际互通网关在接收到单条短消息后直接进行二次拆分,而不等收齐所有一次拆分后的短消息再统一进行二次拆分,大大减小了处理短消息的时延。
图7是本发明国际互通网关另一实施例的结构示意图。
如图7所示,与图6中的实施例相比,该实施例还包括编码转换判断模块71,用于根据国外用户支持的目标编码方式判断短消息接收模块61接收到的短消息是否需要进行编码方式转换,如果国内用户支持的源编码方式与国外用户支持的目标编码方式相同,则确定不需要进行编码方式转换,否则如果国内用户支持的源编码方式存在于编码转换关系配置表中,则确定需要进行编码方式转换,当国内用户支持的源编码方式不存在于编码转换关系配置表中时,确定不需要进行编码方式转换;编码转换模块72,用于在编码转换判断模块71确定需要进行编码方式转换的情况下对接收到的短消息进行对应的编码转换,即,将国内用户支持的源编码方式转换为国外用户支持的目标编码方式,并将编码转换后的短消息的长度作为接收到的短消息的长度进行后续处理。
在该实例中,经过国际互通网关拆分后的数据短消息或文本短消息可以顺利地通过国外短消息网络而不被截短,从而可以保证国外用户能够收到内容完整的短信。
图8是本发明国际互通网关又一实施例的结构示意图。
如图8所示,与图7中的实施例相比,该实施例中的短消息拆分模块81包括消息个数确定单元811,用于在短消息接收模块6l接收到原始短消息经一次拆分后的多条短消息的情况下,根据N=ceil[(OL-OMHL)/(L-NMHL)]计算短消息接收模块61接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;消息总数确定单元812,用于根据SN=N*ON和消息个数确定单元811确定的接收到的单条短消息经二次拆分后的短消息个数N计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;短消息二次拆分单元813,用于根据消息个数确定单元811确定的接收到的单条短消息经二次拆分后的短消息个数N和消息总数确定单元812确定的原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,ON为原始短消息经一次拆分后的多条短消息的个数。
通过该实施例可以对一次拆分后的短消息成功地实现二次拆分,从而国外用户可以收到内容正确且完整的短消息。
图9是本发明国际互通网关又一实施例的结构示意图。
如图9所示,与图7中的实施例相比,该实施例中的短消息拆分模块91包括文本消息个数确定单元911,用于在短消息接收模块61接收到原始短消息经一次拆分后的多条短消息并且编码转换判断模块71确定需要进行编码方式转换的情况下,根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算短消息接收模块61接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;文本消息总数确定单元912,用于根据SN=N*ON和文本消息个数确定单元911确定的接收到的单条短消息经二次拆分后的短消息个数N计算原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;文本短消息二次拆分单元913,用于根据文本消息个数确定单元911确定的接收到的单条短消息经二次拆分后的短消息个数N和文本消息总数确定单元912确定的原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对接收到的单条短消息分别进行二次拆分;其中,OL为经一次拆分后的第一条短消息的长度,OMHL为经一次拆分后的第一条短消息的消息头长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为国外用户支持的单条短消息中一个字符的编码长度,OCL为接收到的单条短消息中一个字符的编码长度,ON为原始短消息经一次拆分后的多条短消息的个数。
在该实例中,当发往国外用户的短消息为文本短消息,并且短消息的源编码方式与目标编码方式不一致时,可以通过编码方式转换以及短消息的拆分来保证国外用户能收到内容正确且完整的短消息。
图10是本发明国际互通网关再一实施例的结构示意图。
如图10所示,与图8中的实施例相比,该实施例还包括消息头去除模块101,用于去除短消息接收模块61接收到的单条短消息中的原始消息头,并对串接消息头的标志位进行复位;消息头确定模块102,用于根据NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新消息头的起始编号NMH,其中,OMH为接收到的单条短消息的原始消息头,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;消息头插入模块103,用于在二次拆分后,将消息头确定模块102确定的二次拆分后的短消息的新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH递增后串接到所述二次拆分后的其他短消息中,并对串接消息头的标志位进行置位。
该实施例在国际互通网关接收到的短消息为数据短消息时,经二次拆分后,将新的消息头串接到二次拆分后的短消息中,国外用户接收到这些短消息后,能够根据消息头获知这些短消息顺序,从而可以得到内容完整的短消息。
图11是本发明国际互通网关再一实施例的结构示意图。
如图11所示,与图8中的实施例相比,该实施例还包括文本消息头去除模块111,用于去除短消息接收模块61接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;文本消息头确定模块112,用于根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为接收到的单条短消息的原始消息头/原始序号,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;文本消息头插入模块113,用于在二次拆分后,将文本消息头确定模块112确定的二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH/起始序号NSQ递增后串接到二次拆分后的其他短消息中,并对串接消息头/序号的标志位进行置位;提示信息插入模块114,用于在二次拆分后的短消息中无内容的情况下,插入提示信息。
图12是本发明国际互通网关的再一实施例的结构示意图。
如图12所示,与图9中的实施例相比,该实施例还包括文本消息头去除模块121,用于去除短消息接收模块61接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;文本消息头确定模块122,用于根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为接收到的单条短消息的原始消息头/原始序号,N为接收到的单条短消息经二次拆分后的短消息个数,SN为原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;文本消息头插入模块123,用于在二次拆分后,将文本消息头确定模块122确定的二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到二次拆分后的第一条短消息中,将起始编号NMH/起始序号NSQ递增后串接到二次拆分后的其他短消息中,并对串接消息头/序号的标志位进行置位;提示信息插入模块124,用于在二次拆分后的短消息中无内容的情况下,插入提示信息。
上述两个实施例在国际互通网关接收到的短消息为文本短消息时,经二次拆分后,将新的消息头/新序号串接到二次拆分后的短消息中,国外用户接收到这些短消息后,能够根据新消息头/新序号的顺序阅读这些短消息,从而为国外用户阅读短信提供了便利性。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显而易见的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种短消息处理方法,其特征在于,所述方法包括:
国际互通网关接收国内用户发给国外用户的短消息;
所述国际互通网关根据国外用户支持的目标编码方式判断接收到的短消息是否需要进行编码方式转换;
所述国际互通网关在确定需要进行编码方式转换的情况下,根据编码转换关系配置表对接收到的短消息进行对应的编码转换;
所述国际互通网关将编码转换后的短消息的长度与所述国外用户支持的单条短消息的长度进行比较,其中,所述国际互通网关对发往不同方向的短消息设置不同的拆分长度门限;
当编码转换后的短消息的长度大于所述国外用户支持的单条短消息的长度时,所述国际互通网关根据所述国外用户支持的单条短消息的长度对编码转换后的短消息进行拆分。
2.根据权利要求1所述的方法,其特征在于,当所述国际互通网关接收到原始短消息经一次拆分后的多条短消息并且确定不需要进行编码方式转换时,国际互通网关通过下述步骤对接收到的短消息进行拆分:
根据N=ceil[(OL-OMHL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;
根据SN=N*ON计算所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;
根据所述接收到的单条短消息经二次拆分后的短消息个数N和所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对所述接收到的单条短消息分别进行二次拆分;
其中,OL为经一次拆分后的第一条短消息的长度,OMHL为所述经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,ON为所述原始短消息经一次拆分后的多条短消息的个数。
3.根据权利要求1所述的方法,其特征在于,所述短消息为文本短消息,当所述国际互通网关接收到原始短消息经一次拆分后的多条短消息时,在所述接收到的短消息需要进行编码方式转换的情况下,所述国际互通网关根据所述国外用户支持的单条短消息的长度对编码转换后的短消息进行拆分的步骤包括:
根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;
根据SN=N*ON计算所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;
根据所述接收到的单条短消息经二次拆分后的短消息个数N和所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对所述接收到的单条短消息分别进行二次拆分;
其中,OL为经一次拆分后的第一条短消息的长度,OMHL为所述经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为所述国外用户支持的单条短消息中一个字符的编码长度,OCL为所述接收到的单条短消息中一个字符的编码长度,ON为所述原始短消息经一次拆分后的多条短消息的个数。
4.根据权利要求2所述的方法,其特征在于,当所述短消息为数据短消息且确定不需要进行编码方式转换时,所述方法还包括:
去除所述接收到的单条短消息中的原始消息头,并对串接消息头的标志位进行复位;
根据NMH=[(OMH-1)*N+1]/SN计算所述经二次拆分后的短消息的新消息头的起始编号NMH,其中,OMH为所述接收到的单条短消息的原始消息头,N为所述接收到的单条短消息经二次拆分后的短消息个数,SN为所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;
在所述二次拆分后,将所述二次拆分后的短消息的新消息头的起始编号NMH插入到所述二次拆分后的第一条短消息中,将所述起始编号NMH递增后串接到所述二次拆分后的其他短消息中,并对所述串接消息头的标志位进行置位。
5.根据权利要求2或3所述的方法,其特征在于,当所述短消息为文本短消息时,所述方法还包括:
去除所述接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;
根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算所述经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为所述接收到的单条短消息的原始消息头/原始序号,N为所述接收到的单条短消息经二次拆分后的短消息个数,SN为所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;
在所述二次拆分后,将所述二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到所述二次拆分后的第一条短消息中,将所述起始编号NMH/起始序号NSQ递增后串接到所述二次拆分后的其他短消息中,并对所述串接消息头/序号的标志位进行置位;
如果所述二次拆分后的短消息中无内容,则插入提示信息。
6.一种国际互通网关,其特征在于,所述国际互通网关包括:
短消息接收模块,用于接收国内用户发给国外用户的短消息;
编码转换判断模块,用于根据国外用户支持的目标编码方式判断所述短消息接收模块接收到的短消息是否需要进行编码方式转换;
编码转换模块,用于在所述编码转换判断模块确定需要进行编码方式转换的情况下根据编码转换关系配置表对接收到的短消息进行对应的编码转换;
短消息长度比较模块,用于将所述编码转换模块转换后的短消息的长度与所述国外用户支持的单条短消息的长度进行比较,其中,所述国际互通网关对发往不同方向的短消息设置不同的拆分长度门限;
短消息拆分模块,用于在所述短消息长度比较模块确定编码转换后的短消息的长度大于所述国外用户支持的单条短消息的长度的情况下,根据所述国外用户支持的单条短消息的长度对编码转换后的短消息进行拆分。
7.根据权利要求6所述的国际互通网关,其特征在于,所述短消息拆分模块包括:
消息个数确定单元,用于在所述短消息接收模块接收到原始短消息经一次拆分后的多条短消息并且编码转换判断模块确定不需要进行编码方式转换的情况下,根据N=ceil[(OL-OMHL)/(L-NMHL)]计算所述短消息接收模块接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;
消息总数确定单元,用于根据SN=N*ON和所述消息个数确定单元确定的所述接收到的单条短消息经二次拆分后的短消息个数N计算所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;
短消息二次拆分单元,用于根据所述消息个数确定单元确定的所述接收到的单条短消息经二次拆分后的短消息个数N和所述消息总数确定单元确定的所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对所述接收到的单条短消息分别进行二次拆分;
其中,OL为经一次拆分后的第一条短消息的长度,OMHL为所述经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,ON为所述原始短消息经一次拆分后的多条短消息的个数。
8.根据权利要求6所述的国际互通网关,其特征在于,所述短消息拆分模块包括:
文本消息个数确定单元,用于在所述短消息接收模块接收到原始短消息经一次拆分后的多条短消息并且所述编码转换判断模块确定需要进行编码方式转换的情况下,根据N=ceil[(OL-OMHL)*(NCL/OCL)/(L-NMHL)]计算所述短消息接收模块接收到的单条短消息经二次拆分后的短消息个数N,其中,ceil函数为向上取整操作;
文本消息总数确定单元,用于根据SN=N*ON和所述文本消息个数确定单元确定的所述接收到的单条短消息经二次拆分后的短消息个数N计算所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN;
文本短消息二次拆分单元,用于根据所述文本消息个数确定单元确定的所述接收到的单条短消息经二次拆分后的短消息个数N和所述文本消息总数确定单元确定的所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数SN对所述接收到的单条短消息分别进行二次拆分;
其中,OL为经一次拆分后的第一条短消息的长度,OMHL为所述经一次拆分后的第一条短消息的消息头长度,L为经二次拆分后的短消息支持的长度,NMHL为经二次拆分后的短消息的消息头长度,NCL为所述国外用户支持的单条短消息中一个字符的编码长度,OCL为所述接收到的单条短消息中一个字符的编码长度,ON为所述原始短消息经一次拆分后的多条短消息的个数。
9.根据权利要求7所述的国际互通网关,其特征在于,所述国际互通网关还包括:
消息头去除模块,用于当所述短消息为数据短消息且确定不需要进行编码方式转换时去除所述短消息接收模块接收到的单条短消息中的原始消息头,并对串接消息头的标志位进行复位;
消息头确定模块,用于根据NMH=[(OMH-1)*N+1]/SN计算所述经二次拆分后的短消息的新消息头的起始编号NMH,其中,OMH为所述接收到的单条短消息的原始消息头,N为所述接收到的单条短消息经二次拆分后的短消息个数,SN为所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;
消息头插入模块,用于在所述二次拆分后,将所述消息头确定模块确定的所述二次拆分后的短消息的新消息头的起始编号NMH插入到所述二次拆分后的第一条短消息中,将所述起始编号NMH递增后串接到所述二次拆分后的其他短消息中,并对所述串接消息头的标志位进行置位。
10.根据权利要求7或8所述的国际互通网关,其特征在于,所述国际互通网关还包括:
文本消息头去除模块,用于去除所述短消息接收模块接收到的单条短消息中的原始消息头/原始序号,并对串接消息头/序号的标志位进行复位;
文本消息头确定模块,用于根据NSQ=[(OSQ-1)*N+1]/SN、NMH=[(OMH-1)*N+1]/SN计算所述经二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH,其中,OMH/OSQ为所述接收到的单条短消息的原始消息头/原始序号,N为所述接收到的单条短消息经二次拆分后的短消息个数,SN为所述原始短消息经一次拆分后的多条短消息经二次拆分后的短消息总个数;
文本消息头插入模块,用于在所述二次拆分后,将所述文本消息头确定模块确定的所述二次拆分后的短消息的新序号的起始序号NSQ/新消息头的起始编号NMH插入到所述二次拆分后的第一条短消息中,将所述起始编号NMH/起始序号NSQ递增后串接到所述二次拆分后的其他短消息中,并对所述串接消息头/序号的标志位进行置位;
提示信息插入模块,用于在所述二次拆分后的短消息中无内容的情况下,插入提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910178345.5A CN102487493B (zh) | 2009-11-06 | 2009-11-06 | 短消息处理方法和国际互通网关 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910178345.5A CN102487493B (zh) | 2009-11-06 | 2009-11-06 | 短消息处理方法和国际互通网关 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102487493A CN102487493A (zh) | 2012-06-06 |
CN102487493B true CN102487493B (zh) | 2015-06-24 |
Family
ID=46152938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910178345.5A Active CN102487493B (zh) | 2009-11-06 | 2009-11-06 | 短消息处理方法和国际互通网关 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102487493B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102970661A (zh) * | 2012-11-20 | 2013-03-13 | 中兴通讯股份有限公司 | 一种对短消息进行编码转换的方法及装置 |
CN110008281A (zh) * | 2019-04-08 | 2019-07-12 | 珠海格力电器股份有限公司 | 一种基于Redis数据库可视化数据的处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1859625A (zh) * | 2006-02-27 | 2006-11-08 | 华为技术有限公司 | 长消息处理方法及装置 |
CN101001413A (zh) * | 2007-01-08 | 2007-07-18 | 宇龙计算机通信科技(深圳)有限公司 | Cdma网络长短信传输方法 |
CN101106754A (zh) * | 2007-06-27 | 2008-01-16 | 中国联合通信有限公司 | 一种移动网络中向网关发送短消息的方法 |
EP1559282A4 (en) * | 2002-11-04 | 2008-02-20 | Nokia Corp | METHOD FOR CONTROLLING FAULT CORRECTIONS IN A CELLULAR SYSTEM |
CN101360278A (zh) * | 2008-09-17 | 2009-02-04 | 华为技术有限公司 | 一种即时消息收发的方法、系统和设备 |
-
2009
- 2009-11-06 CN CN200910178345.5A patent/CN102487493B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1559282A4 (en) * | 2002-11-04 | 2008-02-20 | Nokia Corp | METHOD FOR CONTROLLING FAULT CORRECTIONS IN A CELLULAR SYSTEM |
CN1859625A (zh) * | 2006-02-27 | 2006-11-08 | 华为技术有限公司 | 长消息处理方法及装置 |
CN101001413A (zh) * | 2007-01-08 | 2007-07-18 | 宇龙计算机通信科技(深圳)有限公司 | Cdma网络长短信传输方法 |
CN101106754A (zh) * | 2007-06-27 | 2008-01-16 | 中国联合通信有限公司 | 一种移动网络中向网关发送短消息的方法 |
CN101360278A (zh) * | 2008-09-17 | 2009-02-04 | 华为技术有限公司 | 一种即时消息收发的方法、系统和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102487493A (zh) | 2012-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2509344B1 (en) | Method for transmitting and receiving multimedia information and terminal thereof | |
EP1457068B8 (en) | A method of and apparatus for handling messages in a mobile communications environment | |
US8260333B2 (en) | Consolidating international short message service messages destined to multiple recipients | |
CN101621763B (zh) | 一种在手机终端显示发送方中文名称的方法和相应的装置 | |
US20110143784A1 (en) | System and Method for Indicating Multiple Destination Addresses in a Message | |
CN101938719A (zh) | 短信编码解码方法、装置以及终端 | |
CN1848973B (zh) | 一种短消息群发的方法、终端及短消息中心 | |
CN102487493B (zh) | 短消息处理方法和国际互通网关 | |
CN103688558A (zh) | 用于wap文本消息发送的在3gpp网络和3gpp2网络之间的接口 | |
CN100373962C (zh) | 一种短信群发的方法及短信群发平台 | |
KR20080043103A (ko) | 통합 ip 메시지 서비스와 단문 메시지 서비스 간에인터워킹 시스템 및 방법 | |
KR101531802B1 (ko) | 단문 메시지 서비스에서의 문자 지원 | |
KR100956793B1 (ko) | 메시지 상호 호환성을 제공하는 메시지 포맷 변경 방법 및그를 위한 메시지 서버 | |
CN102123359B (zh) | 彩信的转发方法、装置、系统及彩信接收装置 | |
CN104144396A (zh) | 短信实现方法、系统和短信中心 | |
CN101577874A (zh) | 一种短消息处理方法及短消息中心 | |
CN102137347B (zh) | 提供主叫信息的呼叫方法、系统和业务控制点 | |
CN101583103A (zh) | 一种文本模式短消息的发送或接收方法和装置 | |
KR101021755B1 (ko) | 이동 통신망에서 메시지를 분류하는 방법, 장치 및 시스템 | |
CN114222258B (zh) | 实现5g消息手机与北斗终端进行多媒体消息通讯的方法 | |
CN101835109B (zh) | 业务发起方法及终端 | |
CN1315342C (zh) | 实现自适应选择信息发送方式的方法 | |
CN100396118C (zh) | 一种短消息群发的方法及装置 | |
JP5243948B2 (ja) | ショートメッセージ制御装置及びショートメッセージ制御方法 | |
Pu | Performance analysis of short message service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |