CN100512342C - 收号处理方法及其装置 - Google Patents
收号处理方法及其装置 Download PDFInfo
- Publication number
- CN100512342C CN100512342C CNB2006100570871A CN200610057087A CN100512342C CN 100512342 C CN100512342 C CN 100512342C CN B2006100570871 A CNB2006100570871 A CN B2006100570871A CN 200610057087 A CN200610057087 A CN 200610057087A CN 100512342 C CN100512342 C CN 100512342C
- Authority
- CN
- China
- Prior art keywords
- dynamic
- dialing
- matching
- initial
- character
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
Abstract
本发明提供了一种收号处理方法,其特征在于包括以下步骤:步骤a,在摘机时,下发初始数图;步骤b,在拨号过程中,检查首先拨打的号码与初始数图是否匹配,以得到初始匹配情况;步骤c,根据初始匹配情况,确定执行步骤d或者确定拨号错误;步骤d,在拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态数图;步骤e,不断地检查逐个拨打的号码与对应的动态数图的匹配情况,以得到动态匹配情况;以及步骤f,根据动态匹配情况来确定继续执行步骤d和步骤e、或者确定号首、或者确定拨号错误。
Description
技术领域
本发明涉及通信领域,更具体而言,涉及用于拨号过程的收号处理方法及其装置。
背景技术
在NGN(Next Generation Network,下一代网络)中,最大的一个特点就是呼叫控制和承载是分离的,呼叫控制功能由SS(SoftSwitch,软交换)来实现,媒体流的承载主要在MG(Media Gateway,媒体网关)上实现。SS和MG之间主要通过媒体网关控制协议(如MeGaCo/H.248 Media Gateway Control/H.248)来交互。用户挂在MG下,用户的拨号由MG根据当前的DigitMap(Digit Map,数图)定义规则进行检测并上报给SS,再由SS根据所拨的被叫号码决定本次呼叫的后续处理。
NGN是一个开放的架构,它和PSTN、3G等网络都可以互通,同时又能提供非常多样的业务,决定了NGN呼叫属性的繁多。这也决定了在运营商的NGN中需要配置的号首数量非常庞大,不同的号首,对应的实际号码长度可能是定长,也可能是变长。所谓号首,是指被叫号码的前缀,其是决定与本次呼叫有关的各种业务的关键因素。
在NGN中,当NGN用户发起呼叫时,如何收集被叫号码应该是一个很基本的问题,同时它也是一个比较复杂的问题,因为它需要解决如何对拨号超时进行精确控制,解决如何判断拨号结束,解决如何生成正确的DigitMap等,特别是当号首很多时,生成DigitMap的问题会变的更加复杂。解决收集号码方案的好坏,会对NGN呼叫信令的数量,呼叫性能,用户拨号的友好性等产生很大的影响。
图1示出了相关技术的收号处理的流程图。
为了解决这种收集被叫号码的问题,在相关技术中提供了一种收号处理的方案。如图1所示,MG在上报用户摘机事件后(S102),SS给MG下发一个简单的DigitMap(S104),这个DigitMap定义了对定长被叫号码的精确匹配和变长被叫号码的部分匹配的拨号规则,当用户拨的号码匹配DigitMap后(S106),MG就把号码上报给SS,然后SS继续下发一个只收一位号码的DigitMap如(x|E|F)给MG(S108),作继续收号处理。判断号码是否为定长(S110),这样对于定长的号码,MG可以做到一次就把被叫号码上报给SS(S112),直接就可以定位被叫。对于变长号码,MG第一次只会上报部分号码(S114),SS后续等待MG后续一位一位号码上报,直到被叫定位成功或失败为止(S116)。
然而,在相关技术的收号处理方案中存在以下问题:
1、对于号首对应的被叫号码为定长的拨号情况,用户拨了足够的号码,MG检测拨号匹配,上报给SS,也会存在SS下发多余的DigitMap的情况,产生多余的消息交换,以及MG作多余的收号处理;
2、对于号首对应的被叫号码为变长长度的拨号情况,当用户拨的号码第一次匹配DigitMap上报后,SS逐位下DigitMap给MG收号的过程,会使SS与MG之间的消息交互过多,SS内部号首分析或尝试用户定位的次数也会出现不必要的增加,同时也会造成SS在局间逐位送号码的情况,这些必定影响性能、呼叫接续速度和成功率;以及
3、拨号超时往往是由MG和SS单独控制,初始收号定时器时长无法确定,无法做到不同阶段的拨号超时时长分类控制。
由此可见,在相关技术的收号处理中,在收集被叫号码过程中没能做到对用户拨号完全的预先判断,导致即使号码已经足够,也会出现发送多余号码的情况。
因此,人们需要提供一种解决方案,能够解决上述相关技术中的问题。
发明内容
本发明旨在提供基本上克服了由于现有技术的局限和缺陷而造成的一个或多个问题的,用于拨号过程的收号处理方法及其装置。
根据本发明的一个方面,提供了一种收号处理方法,其特征在于包括以下步骤:步骤a,在摘机时,下发初始数图;步骤b,在拨号过程中,检查首先拨打的号码与初始数图是否匹配,以得到初始匹配情况;步骤c,根据初始匹配情况,确定执行步骤d或者确定拨号错误,其中,当初始匹配情况为匹配时,确定执行步骤d;当初始匹配情况为不匹配时,则确定拨号错误;步骤d,在拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态数图;步骤e,不断地检查逐个拨打的号码与对应的动态数图的匹配情况,以得到动态匹配情况;以及步骤f,根据动态匹配情况来确定继续执行步骤d和步骤e、或者确定号首、或者确定拨号错误,其中,当动态匹配情况为匹配到最大号长时,则确定号首;当动态匹配情况为尚未匹配到最大号长,且尚为匹配时,则确定继续执行步骤d和步骤e;当动态匹配情况为尚未匹配到最大号长,且为不匹配时,则确定拨号错误。
初始数图和动态数图由数图生成方法生成,数图生成方法包括以下步骤:第一步骤,根据预设的数图数据表,按照预设的树生成规则生成数图树,其中数图数据表包括多条记录,每条记录包括号首;以及第二步骤,利用数图树,按照预设的数图生成规则生成数图集合,数图集合包括初始数图和动态数图。
数图生成方法由软交换机执行。
数图生成方法由媒体网关执行。
树生成规则包括以下步骤:步骤t1,创建一个根结点;步骤t2,读取数图数据表里第1条记录的号首,解析其中的字符,取字符中的第1个字符作为根结点下的第1子结点,依次地取下一个字符作为是其前面字符的子结点,直到第1条记录的号首中的最后一个字符处理完,从而,由第1条记录的号首生成了数图树的一部分;步骤t3,读取数图数据表里下一条记录的号首,解析其中的字符,取字符中的第1字符从上到下地与数图树每一层上的结点数据逐个地比较;步骤t4,如果没有找到结点相同值,就取第1字符作为根结点的新的子结点,依次地取下一个字符作为是其前面字符的子结点,直到下一条记录的号首中的最后一个字符处理完,从而,由下一条记录的号首生成了数图树的一部分;步骤t5,如果找到具有相同值的结点,就将具有相同值的结点看作一个根节点,逐个地对字符中所有字符执行与步骤t3和步骤t4相同的操作,直到下一条号首中的字符全部处理完,从而由下一条记录的号首生成了数图树的一部分;以及步骤t6,逐个地对数图数据表中的下一条记录的号首都执行步骤t3、t4、和t5,直到处理完数图数据表中的所有记录,从而生成数图树。
数图生成规则包括:生成初始数图;以及生成动态数图。
生成初始数图包括以下步骤:利用数图树,取数图数据表中所有号首的前预定位数的字符生成初始数图。
生成初始数图包括以下步骤:利用数图树,根据最大号长和最小号长以及预定位数,来取数图数据表中所有号首的字符生成初始数图。
利用人工地设置来生成初始数图。
生成动态数图包括以下步骤:当所拨号码匹配到数图树的终结点时,将数图树中对应路径的数据计算出要下发的动态数图;以及当所拨号码尚未匹配到数图树的终结点时,判断匹配到的当前结点否下一层有多个子结点,然后根据判断来计算出要下发的动态数图。
数图生成规则在生成初始数图时,在初始数图中插入T、L、和S定时器中的至少一个,用于控制拨号超时。
数图生成规则在生成动态数图时,在动态数图中插入T、L、和S定时器中的至少一个,用于控制拨号超时。
当L定时器超时了,则判断拨号结束。
根据本发明的另一个方面,提供了一种收号处理装置,其特征在于包括:初始下发模块,用于在摘机时,下发初始数图;初始匹配模块,用于在拨号过程中,检查首先拨打的号码与初始数图是否匹配,以得到初始匹配情况;初始确定模块,用于根据初始匹配情况,确定执行动态下发模块或者确定拨号错误,其中,当初始匹配情况为匹配时,确定执行动态下发模块;当初始匹配情况为不匹配时,则确定拨号错误;动态下发模块,用于在拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态数图;动态匹配模块,用于不断地检查逐个拨打的号码与对应的动态数图的匹配情况,以得到动态匹配情况;以及动态确定模块,用于根据动态匹配情况来确定继续执行动态下发模块和动态匹配模块、或者确定号首、或者确定拨号错误,其中,当动态匹配情况为匹配到最大号长时,则确定号首;当动态匹配情况为尚未匹配到最大号长,且尚为匹配时,则确定继续执行动态下发模块和动态匹配模块;动态匹配情况为尚未匹配到最大号长,且为不匹配时,则确定拨号错误。
初始数图和动态数图由数图生成装置生成,数图生成装置包括:数图树生成模块,用于根据预设的数图数据表,按照预设的树生成规则生成数图树,其中数图数据表包括多条记录,每条记录包括号首;以及数图生成模块,用于利用数图树,按照预设的数图生成规则生成数图集合,数图集合包括初始数图和动态数图。
通过上述技术方案,本发明实现了如下技术效果:
本发明给出的无线资源管理架构不需要一个独立的服务器节点,基站之间的无线资源管理的相关信息的获取采用按需获取的方式,最大程度地降低了所需要的信令负荷。
另外,本发明还明确定义了无线支持服务器中无线资源管理的实现过程,并给出了边缘负载重配置和批切换的具体信令流程。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了相关技术的收号处理的流程图;
图2示出了根据本发明的原理的收号处理方法的流程图;
图3示出了根据本发明的原理的收号处理装置的结构图;
图4示出了根据本发明的原理的动态DigitMap生成方法;
图5示出了根据本发明的原理的动态DigitMap生成装置;
图6示出了根据本发明的一个实施例的DigitMap树;
图7示出了根据本发明的另一个实施例的DigitMap树;
图8示出了根据本发明的一个实施例的收号处理的消息交互流程图;
图9示出了根据本发明的另一个实施例的收号处理的消息交互流程图;以及
图10示出了根据本发明的又一个实施例的收号处理的消息交互流程图。
具体实施方式
下面将参考附图详细说明本发明。
下面参照图2至图5说明本发明的原理。
图2示出了根据本发明的原理的收号处理方法的流程图;图3示出了根据本发明的原理的收号处理装置的结构图;图4示出了根据本发明的原理的动态DigitMap生成方法;以及图5示出了根据本发明的原理的动态DigitMap生成装置。
根据本发明的原理,采用动态生成DigitMap的方式,SS每一步对MG的收号作精确指示,以使收号过程中产生的信令消息尽可能少,减少过多的重复处理,提高网络呼叫性能。具体来说,根据本发明的原理的收号处理方法如图2所示,包括以下步骤:
收号处理开始,
在步骤S202中,在摘机时,下发初始DigitMap;
在步骤S204中,在拨号过程中,检查首先拨打的号码与初始DigitMap是否匹配,以得到初始匹配情况;
在步骤S206中,根据初始匹配情况,确定执行步骤S208或者确定拨号错误;
在步骤S208中,在拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态DigitMap;
在步骤S210中,不断地检查逐个拨打的号码与对应的动态DigitMap的匹配情况,以得到动态匹配情况;以及
在步骤S212中,根据动态匹配情况来确定继续执行步骤S208和步骤S210、或者确定号首、或者确定拨号错误;
然后收号处理结束。
具体来说,根据本发明的原理的收号处理装置100如图3所示,包括:
初始下发模块12,用于在摘机时,下发初始DigitMap;
初始匹配模块14,用于在拨号过程中,检查首先拨打的号码与初始DigitMap是否匹配,以得到初始匹配情况;
初始确定模块16,用于根据初始匹配情况,确定执行动态下发模块18或者确定拨号错误;
动态下发模块18,用于在拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态DigitMap;
动态匹配模块20,用于不断地检查逐个拨打的号码与对应的动态DigitMap的匹配情况,以得到动态匹配情况;以及
动态确定模块22,用于根据动态匹配情况来确定继续执行动态下发模块18和动态匹配模块、或者确定号首、或者确定拨号错误。
其中,如图4所示,初始DigitMap和所有的动态DigitMap由DigitMap生成方法生成,该方法包括以下步骤:
本方法开始,
在步骤S302中,根据预设的DigitMap数据表,按照预设的树生成规则生成DigitMap树;以及
在步骤S304中,利用DigitMap树,按照预设的DigitMap生成规则生成DigitMap集合,该集合包括初始DigitMap和所有的动态DigitMap;
然后本方法结束。
可选地,其中,如图5所示,初始DigitMap和所有的动态DigitMap由DigitMap生成装置200生成,该装置包括:
DigitMap树生成模块32,用于根据预设的DigitMap数据表,按照预设的树生成规则生成DigitMap树;以及
DigitMap生成模块34,用于利用DigitMap树,按照预设的DigitMap生成规则生成DigitMap集合,该集合包括初始DigitMap和所有的动态DigitMap。
进一步地,本发明在分段动态生成DigitMap的过程中,引入了一种新的超时控制机制:通过灵活设置DigitMap中的T、L、S定时器的值,来统一控制拨号超时的方案。
媒体网关控制协议(如H.248)对DigitMap中的T、L、S定时器有明确的定义,规定了MG在不同拨号情况下的超时:
T:表示摘机等待拨号的超时;
L:表示拨号达到最少需要的号码前,每次拨号的等待超时;以及
S:表示拨号达到最少需要的号码后,还可以继续拨的号码的拨号等待超时。
通过对T、L、S定时器的灵活控制,可以很有效地实现拨号超时管理。把T定时器作为用户摘机后等待首位拨号的超时。把L定时器作为已经有首位拨号但没达到最小号长(表示用户本次拨号中,最少需要拨的号码的长度)的情况下,等待下一位拨号的超时。把S定时器作为达到最小号长但没达到最大号长(表示用户本次拨号中,最多需要拨的号码的长度)的情况下,等待下一位拨号的超时。T、L、S对应的值都可以在SS上灵活配置,当SS给MG下发DigitMap时,在DigitMap中给T、L、S定时器赋上对应的值(如{T:8,L:10,S:3,(288xxxxSxxx)})。
MG收到DigitMap后就会启动相应的T、L、S定时器来控制拨号,在用户拨号过程中,如果定时器超时就会上报已经拨的号码和超时标志给SS。当SS收到上报后就会对T、L、S分类处理,对于T和L的超时上报,SS都作为收号失败,SS可以做不同的处理(如给MG下不同的放音指示)来给用户体验,对于S超时上报作为拨号完全。根据一个实施例的对应方式如下表所示:
表1:T、L、S处理对应表
超时类型 | 上报方式 | SS处理 |
T | Ds=”T” | 收号失败(放忙音) |
L | Ds=”28866L” | 收号失败(放空号音) |
S | Ds=”288665432S” | 拨号完全(进行接续) |
以下将说明本发明的具体实施例。
为了使收号过程中产生信令消息尽可能少,减少过多的重复处理,提高网络呼叫性能,采用动态生成DigitMap的方式,SS每一步对MG的收号作精确指示,具体的实现过程如下:
(一)在用户摘机时SS首先下发一个较小的初始DigitMap(带T、L定时器)给MG;在用户拨号后,MG检查号码是否已经匹配到DigitMap,如果匹配错误就上报给SS,如果还未匹配就继续等待直到有拨号或超时,如果匹配就立即上报给SS。
初始的DigitMap由SS自动根据配置的数据计算生成。
1.SS设计一张表(DigitMap数据表),含有关键字段(号首、最小号长、最大号长),根据实际的网络应用,当SS中每配置一个号首时,就会在DigitMap数据表里产生一条对应的记录。根据一个实施例的DigitMap数据表如下所示:
表2:DigitMap数据表
字冠 | 最小号长 | 最大号长 |
26 | 8 | 8 |
5 | 1 | 1 |
83 | 6 | 10 |
855 | 8 | 8 |
010 | 6 | 10 |
0123 | 6 | 10 |
023 | 6 | 10 |
0061 | 8 | 15 |
006286 | 8 | 15 |
0062877 | 8 | 15 |
006378 | 8 | 15 |
*24 | 3 | 3 |
#24 | 3 | 3 |
2.SS根据DigitMap数据表的数据生成一个DigitMap树。
SS会在系统启动后或DigitMap数据表的内部发生改动后,就会立即自动生成DigitMap树,生成的过程如下:
创建一个根结点(Root),读取DigitMap数据表里第1条记录的号首数据,单个解析号首中的字符,取第1个字符作为根结点下的子结点,继续取下一个字符作为是它前面字符的子结点,继续取下一个字符做同样处理,直到此号首最后一个字符处理完,这样第一个号首数据就处理完并生成了DigitMap树的一部分。
继续读取DigitMap数据表里下一条记录的号首数据,单个解析号首中的字符,取第1字符和当前DigitMap树的第1层上的结点数据逐个比较,如果没有找到结点相同值,就创建一个新结点,并作为根结点的子结点,继续取下一个字符作为它前面字符的子结点,继续取下一个字符做同样处理,直到此号首最后一个字符处理完。如果找到,就继续取号首中的下一个字符和DigitMap树上当前结点的下一层子结点数据逐个比较。继续前面的操作,直到号首中的字符全部处理完或在DigitMap树没有找到相同结点数据。对于在DigitMap树没有找到相同结点数据的情况,需要把当前未匹配字符创建一个结点,并作为上个字符的子结点,后续号首中的未处理的字符,逐个作为它上个字符的子结点,直到号首中的字符处理完。
继续读取DigitMap数据表下一条记录的号首数据,重复前面处理,直到DigitMap数据表所有记录都处理完,这样最后就生成了一个完整的DiigitMap树。
例如上表中的数据根据上面的描述,最终就会生一个如图6所示的DigitMap树。
3.SS根据DigitMap树,自动生成初始DigitMap字串数据,存放在系统中。
SS首先提供一些初始DigitMap数据生成的规则,如下:
规则一:直接取所有号首的前几位字符如(1、2、3)。
规则二:取所有号首的前几位字符如(1、2、3)同时考虑最大、最小号长。
(1)需要根据DigitMap树检索得到一个DigitMap数据生成块的数据,对于规则一比较简单,下面以取2位字符为例来说明:
(a)取DigitMap树中根结点(Root)的子结点(第1层)的第一个结点,判断此结点是否为终结点。
(b)对于是终结点的情况,把结点数据作为DigitMap键记录在DigitMap数据生成块中,且最大号长和最小号长都为空。
(c)对于不是终结点的情况,就搜索此节点的下一层(第2层)子结点,取第一个子结点,把到Root结点的路径上的结点数据组成一个字串作为DigitMap键记录在DigitMap数据生成块中,且最大号长和最小号长都为空。继续取下一个子结点,做同样的处理,直到所有的子结点处理完后,返回到上一层。
(d)取Root结点的下一个子结点,判断此结点是否为终结点,作(b)、(c)处理,直到所有的子结点都处理完。
按前面的DigitMap树示例,检索得到的DigitMap数据生成块如下表所示:
表3:DigitMap数据生成块
DigitMap键 | 最小号长 | 最大号长 |
#2 | NULL | NULL |
26 | NULL | NULL |
01 | NULL | NULL |
00 | NULL | NULL |
02 | NULL | NULL |
5 | NULL | NULL |
85 | NULL | NULL |
83 | NULL | NULL |
*2 | NULL | NULL |
(2)关于动态DigitMap的生成,对于规则二,只需要在规则一的基础上附加一些处理,下面以取2位字符为例来说明:
(a)取DigitMap树中根结点(Root)的子结点(第1层)的第一个结点,判断此结点是否为终结点。
(b)对于是终结点的情况,把结点数据作为DigitMap键记录在DigitMap数据生成块中,同时以DigitMap键查找DigitMap数据表得到相关的最大号长和最小号长,把结果也记录在DigitMap数据生成块中。
(c)对于不是终结点的情况,就搜索此节点的下一层(第2层)子结点,取第一个子结点,把到Root结点的路径上的结点数据组成一个字串作为DigitMap键记录在DigitMap数据生成块中,同时判断此结点是否已经是终结点,如果是终结点,就以当前得到的DigitMap键查找DigitMap数据表得到相关的最大号长和最小号长,记录在在DigitMap数据生成块中,否则最大号长和最小号长都为空。继续取下一个子结点,做同样的处理,直到所有的子结点处理完后,返回到上一层。
(d)取Root结点下一个子结点,判断此结点是否为终结点,作(b)、(c)处理,直到所有的都处理完。
按前面的DigitMap树示例,检索得到的DigitMap数据生成块如下:
表4:DigitMap数据生成块
DigitMap键 | 最小号长 | 最大号长 |
#2 | NULL | NULL |
26 | 8 | 8 |
01 | NULL | NULL |
00 | NULL | NULL |
02 | NULL | NULL |
5 | 1 | 1 |
85 | NULL | NULL |
83 | 6 | 10 |
*2 | NULL | NULL |
(3)不管是哪种规则,最后都只需要根据相关协议把DigitMap数据生成块转换为DigitMap字串。描述如下:
(a)读取系统中T、L定时器对应的时长,把标志及时长,加入DigitMap字串中如(T:10,L:8)。
(b)逐个检索DigitMap数据生成块中的记录,判断是否有最大号长及最小号长数据,如果没有,就直接把DigitMap键加到DigitMap字串中,并加相关分隔符,如果有就需要根据最大号长和最小号长来计算通配串,计算方法如下:
求出最小号长和DigitMap键的字符个数长度的差值:
A=最小号长-LEN(DigitMap键)
求出最小号长和最大号长的差值:
B=最大号长-最小号长
此DigitMap键产生的DigitMap字串为:
DigitMap键,如果A大于0,就加上A个通配字符“x”,如果B大于0就加上短定时器字符标志“S”和B个配字符“x”。
把生成的值加到DigitMap字串中,如果有短定时器S标志此时需要在DigitMap字串中把S的值加在L后面。
(c)继续读取DigitMap数据生成块的下一条数据,按上面步骤处理,直到全部处理完成。
(d)最后按照具体的协议的规定,调整DigitMap字串的格式(如H.248需要把“*”做为E表示,需要用“|”分隔等)。按照规则一中的DigitMap数据生成块计算得到DigitMap为:{T:10,L:8,(E2|26|00|01|02|5|85|83|F2)}。按照规则二中的DigitMap数据生成块计算得到DigitMap为:{T:10,L:8,S:5,(E2|26xxxxxx|00|01|02|5|85|83xxxxSxxxx|F2)}。
(4)SS对自动生成初始DigitMap的规则提供可以配置,这样根据实际应用情况可以灵活选择,作到最好的效果。如对于号首较少的情况可以选择截取号首长度大些并考虑号长的方式生成DigitMap,这样拨号基本可以实现一次就完成。对于号首很多的情况,可以选择截取号首长度小些且不考虑号长的方式生成DigitMap,这样可以避免初始DigitMap过大。
4.SS可以采用不自动生成初始DigitMap的方法,就直接在SS上手工配置一个初始的DigitMap的方式,直接把手工配置DigitMap数据写在表里,下发时直接读取表数据就可以。如直接配置:{T:10,L:8,(E2|2|0|5|8|F2)}。这种方式主要依靠配置人员自己根据协议来计算,适合配置一些简单的DigitMap数据。
(二)MG上报号码后,SS判断是否带了匹配错误或T、L定时器超时标志,如果有就释放呼叫,如果有S超时标志就表示拨号完全,否则SS用最终的被叫号码在DigitMap树上作查找。
1.取号码中第一个字符在DigitMap树上的第1层结点逐个比较,当找到一个结点后,就继续再取号码中下一个字符和当前结点的下一层子结点逐个比较。继续同样处理,直到找到DigitMap树的终结点或号码中的字符已经找完却没有碰到DigitMap树的终结点。
2.对于找到DigitMap树的终结点的情况,即找到唯一匹配的情况。此时把DigitMap树中唯一路径的数据返回,并查找DigitMap数据表,得到对应的最大号长和最小号长。如果被叫号码长度达到最大号长就表示拨号完全,否则需要就计算出要下发的DigitMap。方法如下:
求出最小号长和被叫号码的字符个数长度的差值:
A=最小号长-LEN(被叫号码)
求出最小号长和最大号长的差值:
B=最大号长-最小号长
当B等于0,说明不需要S定时器,只要继续拨号到最小号长就可以。因此就用L定时器值和B个“x”字符组合就可以。例如,按上面示例数据,如果MG上报了26号码,此次下发的DigitMap数据为:{L:8,(xxxxxx)}.
当B大于0。就用L,S定时器值和A个“x”字符,加字符S,加B个“x”组合。例如,按上面示例数据,如果MG上报了83号码,此次下发的DigitMap数据为:{L:8,S:5,(xxxxSxxxx)}。
SS给MG下发DigitMap后,记录已经是最后一次下发的标记。在这种情况下是属于最后一次号码上报,不管是超时还是拨错号。
3.对于号码中的字符已经找完却没有碰到DigitMap树终结点的情况,即未找到唯一匹配的情况。需要判断当前结点,是否下一层有多个子结点,如果有,就把当前结点的下一层所有子节点数据都找出,同时也找出当前结点到Root结点路径上的所有结点。如果没有,就转到当前结点的下一层子节点,继续同样判断处理,直到碰到有多个子结点的结点或已经是终结点的结点。对于终结点,就只需要找出当前结点到Root结点路径上的所有结点。对于另一种情况,还需要把当前结点的下一层所有子节点数据都找出。然后根据这两种情况生成DigitMap处理。方法如下:
(1)对于终结点情况,就把返回的结点数据作为号首,去查找DigitMap数据表,得到最大号长和最小号长。
求出最小号长和号首的字符个数长度的差值:
A=最小号长-LEN(号首)
求出最小号长和最大号长的差值:
B=最大号长-最小号长
求出需要精确拨号的字符:
C=号首中减去被叫号码后的剩余字符。
当B等于0,说明不需要S定时器,只要继续拨号到最小号长就可以。因此就用L定时器值,加C的内容,加B个“x”字符组合就可以。例如,按上面示例数据,如果MG上报了85号码,此次下发的DigitMap数据为:{L:8,(5xxxxx)}。
当B大于0。就用L,S定时器值,加C的内容,A个“x”字符,加字符S,加B个“x”组合。例如,按上面示例数据,如果MG上报了02号码,此次下发的DigitMap数据为:{L:8,S:5,(3xxxSxxxx)}。
SS给MG下发DigitMap后,记录已经是最后一次下发的标记。在这种情况下是属于最后一次号码则上报,不管是超时还是拨错号。
(2)对于有多个子结点的结点情况,只需按下面方法:
把当前结点到Root结点的结点数据减去号码中的字符数据,得到字串A。把当前结点所有返回的子结点的字符用“|”隔开,得到字串B。
用L定时器值,加A的内容,加B的内容组成。例如,按上面示例数据,如果MG上报了00号码,此次下发的DigitMap数据为:{L:8,(6[1|2|3])}。DigitMap树中的位置如图7所示:
4.MG继续上报号码后,SS判断是否最后一次收号,如果是表示收号完成,如果不是,就继续步骤2、3处理。
下面将参照图8至图10给出具体的收号处理的实施例。
图6示出了根据本发明的一个实施例的DigitMap树;
图7示出了根据本发明的另一个实施例的DigitMap树;
图8示出了根据本发明的一个实施例的收号处理的消息交互流程图;图9示出了根据本发明的另一个实施例的收号处理的消息交互流程图;以及图10示出了根据本发明的又一个实施例的收号处理的消息交互流程图。
1.如图8所示,示出了用户拨打*24电话的收号流程图。
超时说明:
摘机不拨号等待10秒超时,达到最少需要拨的号码前,每拨一个号等待8秒超时,达到最少需要拨的号码后,每拨一个号等待5秒超时。
流程说明:
步骤S402:MG上报用户摘机,SS采用直接取所有号首的前2位字符的规则自动生成初始的DigitMap{T:10,L:8,(E2|26|01|02|5|85|83|F2)},并下发给MG;
步骤S404:MG继续上报*2,SS分析只有号首*24符合此拨号,查询DigitMap数据表得到的最大最小号长都为3,因此用户下一位只能4,因此给MG下发DigitMap{L:8,(4)};以及
步骤S406:后续收到号码4上报就表示收号结束。
2.如图9所示,示出了用户拨打85566699电话的收号流程图:
超时说明:
摘机不拨号等待10秒超时,达到最少需要拨的号码前,每拔一个号等待8秒超时,达到最少需要拨的号码后,每拨一个号等待5秒超时。
流程说明:
步骤S502:MG上报用户摘机,SS采用直接取所有号首的前2位字符的规则自动生成初始的DigitMap:{T:10,L:8,(E2|26|01|02|5|85|83|F2)},并下发给MG;
步骤S504:MG继续上报85,SS分析下一个字符只有5,查询DigitMap数据表得到的最大最小号长都为8,因此给MG下发DigitMap:{L:8,(5xxxxx)};以及
步骤S506:后续收到号码566699上报就表示收号结束。
3.如图9所示,示出了用户拨打00637866999电话的收号流程图:
超时说明:
摘机不拨号等待10秒超时,达到最少需要拨的号码前,每拨一个号等待8秒超时,达到最少需要拨的号码后,每拨一个号等待5秒超时。
流程说明:
步骤S602:MG上报用户摘机,SS采用直接取所有号首的前2位字符的规则自动生成初始的DigitMap:{T:10,L:8,(E2|26|01|02|5|85|83|F2)},并下发给MG;
步骤S604:MG继续上报00,SS分析结果下一位只能6,再后一位可以拨1、2、3,因此给MG下发DigitMap:{L:8,(6[1|2|3])};
步骤S606:MG继续上报63,SS分析得出唯一字冠006378,并查出最小号长为10,最大号长为15。因此继续下发DigitMap:{L:8,S:5,(78xxSxxxxxxx)};以及
步骤S608:后续收到号码7866999上报就表示收号结束。
在上述的实施例中,DigitMap树在SS上生成,但是显然DigitMap树也可在MG上生成,把动态生成DigitMap的逻辑处理放在MG上实现,根据用户拨的号码,MG动态分析,结合T,S,L定时器的控制,最终一次性上报被叫号码给SS。
这样,每次收到MG的号码上报都是表示用户拨号已经完全。这种方式对MG的要求比较高,在号首发生变化时需要对MG逐个更新处理,统一维护比较困难。
本发明在进行收集被叫号码过程中,SS对MG的收号作精确指示,避免不必要的信令消息交互,使信令消息尽可能地少,提高性能和接续可靠性。另外,本发明做到对用户拨的被叫号码是否完全进行预先判断,同时要有有效的拨号超时管理机制,做到由SS来指示MG的拨号超时时长,网内的拨号超时时长全部由SS来决定,而且超时时长可以根据拨号分阶段进行分类控制。
因此,本发明实现了如下技术效果:
明显减少了呼叫的信令交互的数量,进一步提高NGN局的整体呼叫性能和接续的可靠性;
通过动态的精确DigitMap匹配收号,可以保证最早得到用户拨号的对错的结果,对于用户响应会更快速,对于运营商减少了不必要的资源占用,提高设备资源利用率;
对于复杂拨号规则的NGN大运营商,可以解决各种复杂收号的需求,降低了MG的要求,增加MG的选择面;以及
灵活地控制各种拨号超时,可以做到各种超时的区别体现,对拨号完全判断也提供有效的控制手段。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种收号处理方法,其特征在于包括以下步骤:
步骤a,在摘机时,下发初始数图;
步骤b,在拨号过程中,检查首先拨打的号码与所述初始数图是否匹配,以得到初始匹配情况;
步骤c,根据所述初始匹配情况,确定执行步骤d或者确定拨号错误,其中,当所述初始匹配情况为匹配时,确定执行所述步骤d;当所述初始匹配情况为不匹配时,则确定拨号错误;
所述步骤d,在所述拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态数图;
步骤e,不断地检查所述逐个拨打的号码与所述对应的动态数图的匹配情况,以得到动态匹配情况;以及
步骤f,根据所述动态匹配情况来确定继续执行所述步骤d和所述步骤e、或者确定号首、或者确定拨号错误,其中,当所述动态匹配情况为匹配到最大号长时,则确定号首;当所述动态匹配情况为尚未匹配到所述最大号长,且尚为匹配时,则确定继续执行所述步骤d和所述步骤e;当所述动态匹配情况为尚未匹配到所述最大号长,且为不匹配时,则确定拨号错误。
2.根据权利要求1所述的收号处理方法,其特征在于,所述初始数图和所述动态数图由数图生成方法生成,所述数图生成方法包括以下步骤:
第一步骤,根据预设的数图数据表,按照预设的树生成规则生成数图树,其中所述数图数据表包括多条记录,每条所述记录包括所述号首;以及
第二步骤,利用所述数图树,按照预设的数图生成规则生成数图集合,所述数图集合包括所述初始数图和所述动态数图。
3.根据权利要求2所述的收号处理方法,其特征在于,所述数图生成方法由软交换机执行。
4.根据权利要求2所述的收号处理方法,其特征在于,所述数图生成方法由媒体网关执行。
5.根据权利要求2所述的收号处理方法,其特征在于,所述树生成规则包括以下步骤:
步骤t1,创建一个根结点;
步骤t2,读取所述数图数据表里第1条记录的号首,解析其中的字符,取所述字符中的第1个字符作为所述根结点下的第1子结点,依次地取下一个字符作为是其前面字符的子结点,直到所述第1条记录的号首中的最后一个字符处理完,从而,由所述第1条记录的号首生成了所述数图树的一部分;
步骤t3,读取所述数图数据表里下一条记录的号首,解析其中的字符,取所述字符中的第1字符从上到下地与所述数图树每一层上的结点数据逐个地比较;
步骤t4,如果没有找到结点相同值,就取所述第1字符作为所述根结点的新的子结点,依次地取下一个字符作为是其前面字符的子结点,直到所述下一条记录的号首中的最后一个字符处理完,从而,由所述下一条记录的号首生成了所述数图树的一部分;
步骤t5,如果找到具有相同值的结点,就将所述具有相同值的结点看作一个根节点,逐个地对所述字符中所有字符执行与所述步骤t3和所述步骤t4相同的操作,直到所述下一条号首中的字符全部处理完,从而由所述下一条记录的号首生成了所述数图树的一部分;以及
步骤t6,逐个地对所述数图数据表中的下一条记录的号首都执行所述步骤t3、t4、和t5,直到处理完所述数图数据表中的所有记录,从而生成所述数图树。
6.根据权利要求5所述的收号处理方法,其特征在于,所述数图生成规则包括:
生成所述初始数图;以及
生成所述动态数图。
7.根据权利要求6所述的收号处理方法,其特征在于,生成所述初始数图包括以下步骤:
利用所述数图树,取所述数图数据表中所有号首的前预定位数的字符生成所述初始数图。
8.根据权利要求6所述的收号处理方法,其特征在于,生成所述初始数图包括以下步骤:
利用所述数图树,根据最大号长和最小号长以及预定位数,来取所述数图数据表中所有号首的字符生成所述初始数图。
9.根据权利要求6所述的收号处理方法,其特征在于,利用人工地设置来生成所述初始数图。
10.根据权利要求6所述的收号处理方法,其特征在于,生成所述动态数图包括以下步骤:
当所拨号码匹配到所述数图树的终结点时,将所述数图树中对应路径的数据计算出要下发的动态数图;以及
当所拨号码尚未匹配到所述数图树的终结点时,判断匹配到的当前结点否下一层有多个子结点,然后根据所述判断来计算出要下发的动态数图。
11.根据权利要求6所述的收号处理方法,其特征在于,所述数图生成规则在生成所述初始数图时,在所述初始数图中插入T、L、和S定时器中的至少一个,用于控制拨号超时。
12.根据权利要求6所述的收号处理方法,其特征在于,所述数图生成规则在生成所述动态数图时,在所述动态数图中插入T、L、和S定时器中的至少一个,用于控制拨号超时。
13.根据权利要求11或12所述的收号处理方法,其特征在于,当L定时器超时了,则判断拨号结束。
14.一种收号处理装置,其特征在于包括:
初始下发模块,用于在摘机时,下发初始数图;
初始匹配模块,用于在拨号过程中,检查首先拨打的号码与所述初始数图是否匹配,以得到初始匹配情况;
初始确定模块,用于根据所述初始匹配情况,确定执行动态下发模块或者确定拨号错误,其中,当所述初始匹配情况为匹配时,确定执行所述动态下发模块;当所述初始匹配情况为不匹配时,则确定拨号错误;
所述动态下发模块,用于在所述拨号过程中,对接下来逐个拨打的号码,不断地下发新的对应的动态数图;
动态匹配模块,用于不断地检查所述逐个拨打的号码与所述对应的动态数图的匹配情况,以得到动态匹配情况;以及
动态确定模块,用于根据所述动态匹配情况来确定继续执行所述动态下发模块和所述动态匹配模块、或者确定号首、或者确定拨号错误,其中,当所述动态匹配情况为匹配到最大号长时,则确定号首;当所述动态匹配情况为尚未匹配到所述最大号长,且尚为匹配时,则确定继续执行所述动态下发模块和所述动态匹配模块;所述动态匹配情况为尚未匹配到所述最大号长,且为不匹配时,则确定拨号错误。
15.根据权利要求14所述的收号处理装置,其特征在于,所述初始数图和所述动态数图由数图生成装置生成,所述数图生成装置包括:
数图树生成模块,用于根据预设的数图数据表,按照预设的树生成规则生成数图树,其中所述数图数据表包括多条记录,每条所述记录包括所述号首;以及
数图生成模块,用于利用所述数图树,按照预设的数图生成规则生成数图集合,所述数图集合包括所述初始数图和所述动态数图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100570871A CN100512342C (zh) | 2006-03-17 | 2006-03-17 | 收号处理方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100570871A CN100512342C (zh) | 2006-03-17 | 2006-03-17 | 收号处理方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1870682A CN1870682A (zh) | 2006-11-29 |
CN100512342C true CN100512342C (zh) | 2009-07-08 |
Family
ID=37444224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100570871A Expired - Fee Related CN100512342C (zh) | 2006-03-17 | 2006-03-17 | 收号处理方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100512342C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101969400B (zh) * | 2010-10-13 | 2012-05-30 | 深圳市共进电子股份有限公司 | 一种网络语音通信终端设备号码匹配的方法 |
CN102185985B (zh) * | 2011-01-30 | 2013-05-22 | 广东佳和通信技术有限公司 | 一种ip终端或网关的收号方法 |
CN102892049A (zh) * | 2011-07-18 | 2013-01-23 | 中兴通讯股份有限公司 | 一种数图号码分析方法及系统 |
CN103905658B (zh) * | 2012-12-31 | 2017-02-08 | 中国移动通信集团辽宁有限公司 | 一种呼叫过程中时延的处理方法、装置及交换设备 |
CN108234778B (zh) * | 2017-12-05 | 2020-04-24 | 瑞斯康达科技发展股份有限公司 | 一种数图规则生成方法和装置 |
-
2006
- 2006-03-17 CN CNB2006100570871A patent/CN100512342C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1870682A (zh) | 2006-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5438570A (en) | Service observing equipment for signalling System Seven telephone network | |
US5862207A (en) | Method and system for providing virtual telephone terminals | |
EP1096808A2 (en) | Communications switching system | |
CN100512342C (zh) | 收号处理方法及其装置 | |
CN1162381A (zh) | 在多节点电信网络中提供增强的用户业务的系统和方法 | |
EP1916804A1 (en) | A value added service network, an ivr server and a method for analyzing the process track in real time | |
CN102438243A (zh) | 一种分析电话频次识别骚扰电话的方法 | |
US8582732B2 (en) | Automatic digit map generation for access gateway during call setup | |
CN103873713B (zh) | 用于ip语音电话的用户号码识别的装置和方法 | |
US6084875A (en) | Routing of internet traffic and related internet service provider services | |
CN102045463A (zh) | 呼叫分析方法及装置 | |
CN101335788B (zh) | 一种检测并限制利用回拨占用线路资源的系统及方法 | |
CN111371575A (zh) | 一种通话问题定界的方法和装置 | |
US20080175370A1 (en) | Method for dial plan parsing and a system incorporating the same | |
US9479649B2 (en) | Method and system for call data analysis | |
CN100499837C (zh) | 下一代网络中虚拟用户交换机群用户拨号控制方法 | |
EP0957647A2 (en) | A method and apparatus for providing a directory number to a call-processing device in a communications network | |
KR101411929B1 (ko) | 고객 전화번호 업데이트 장비 및 방법 | |
EP1460860A1 (en) | Method, system and apparatus for managing bearer connections in a telecommunications network | |
TWI478530B (zh) | 新世代ngn網路監測方法及系統 | |
EP2206323B1 (en) | Method to collect and manage smart dialplan for session initiation protocol devices | |
CN1889610B (zh) | 大容量分布式信令处理设备及其方法 | |
CN101621839B (zh) | 一种解决软交换跨域模式下多区号问题的方法 | |
JP2002305591A (ja) | メディア別着信選択システム、メディア別着信選択方法及びメディア別着信選択プログラム並びに該プログラムを記録した記録媒体 | |
CN101346969A (zh) | Ip多媒体子系统的交换单元中配置新的和改变的业务的方法和装置 |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090708 Termination date: 20130317 |