一种例外通配的实现方法 【技术领域】
本发明涉及通信网络中标识的通配技术,特别涉及一种例外通配的实现方法。
背景技术
在目前定义的大多数的标准协议中都使用到标识的通配,如在媒体网关控制协议(MGCP协议)中,端点(Endpoint)标识和连接(Connection)标识,端点标识定义的通配符“*”表示所有的端点,通配符“$”表示任意的端点,连接标识定义的通配符“*”表示所有的连接,通配符“$”表示当前的连接。当媒体网关(MG)上所有的端点故障,那么MG就可以使用端点通配符“*”,上报给MGC一个故障命令。而不需要每一个端点标识上报一个故障命令。从而减少了MGC与MG之间大量的消息,极大提高了设备的处理效率。再例如H248协议中的上下文(Context)标识和终端(Termination)标识,上下文标识定义的通配符“*”表示所有的上下文,终端标识定义的通配符“*”,表示所有的终端。当MGC希望一个上下文中所有的终端都听音乐时,就可以指定一个上下文标识,然后使用终端地通配符“*”,下发一个听音乐命令给MG,而不需要给指定的这个上下文标识中每一个终端下发一个听音乐的命令给MG。从而减少了MGC与MG之间大量的消息交互,减少MGC和MG之间传输网络的负荷。总的来说标识的通配可以减少消息传输网络的负荷,同时提高命令处理的效率,增强命令处理的功能。
虽然现有技术中能采用通配法使用一个命令对所有成员进行同类型的操作,但要对除某一个或某几个成员之外的其他成员进行操作(即例外操作)时,则只能对每一个成员发送命令相同的命令。如:现在一个会议中,有一个会议召集者和许多会议的参与者,现在会议的召集者要求向除自己之外的每个参与者放音乐。那么只能给除会议召集者之外的每一个参与者发送一个相同的听音乐的命令。因此,在现有技术中实现例外操作时,不仅操作繁琐、命令的处理效率低,而且下发大量的操作命令也会使协议命令消息的传输网络负荷加重。
【发明内容】
本发明的目的在于提供一种例外通配的实现方法,以解决现有技术中实现例外排除操作时,因需要对每一操作成员下发命令而存在操作繁琐和加大传输网络负荷的问题。
本发明提供以下技术方案:
一种例外通配的实现方法,用于对指定域内除例外成员之外的其他成员进行操作,该方法包括步骤:
发送至少包括指定域、例外通配符和例外成员标识参数的命令;
分析所述命令并解释命令中的例外通配符;以及
按该例外通配符的定义,分别将所述指定域的每一成员标识与例外成员标识进行比较,并对成员标识与所述例外成员标识不相同的成员执行所述命令对应的操作。
根据上述技术方案:
所述例外成员标识可为一个或多个。
所述的命令是由媒体网关控制器下发给媒体网关。
所述的命令可以是由媒体网关上报给媒体网关控制器。
成员标识为媒体网关控制协议(MGCP协议)中的端点(Endpoint)标识、连接(Connection)标识或请求事件(RequestEvent)标识。
成员标识为H248协议中的上下文(Context)标识、终端(Termination)标识或事件(Event)标识。
成员标识为基于网络的呼叫信令(NCS)协议中的端点(Endpoint)标识,连接(Connection)标识和请求事件(RequestEvent)标识。
所述例外通配符为“!”符号。
采用本发明,通过下发一次命令即可对某一域内的部分成员进行相应的操作,而不需对该部分成员中的每一成员分别下发命令,从而能够大大减少协议命令的消息长度,降低传输网络的负荷,同时也使得操作简单。
【附图说明】
图1为实施的组网示意图;
图2为本发明的流程图。
【具体实施方式】
本发明定义一个例外通配标识,该标识表示在指定域(范围)内除某一标识或某些标识外所有的标识,通过将例外通配标识作操作命令的一个参数来使用,以简化操作。
在本实施例中,例外通配符为“!”,其后面跟标识符,表示除其后面的标识外所有的标识。
本发明的方法是:发送至少包括指定域、例外通配符和例外成员标识参数的命令;由命令接收对象分析所述命令并解释命令中的例外通配符;以及按该例外通配符的定义,分别将所述指定域的每一成员标识与例外成员标识进行比较,并对成员标识与所述例外成员标识不相同的成员执行所述命令对应的操作。
以在网络中进行会议为例对发明进行详细说明:
参阅图1所示,媒体网关控制器连接有多个媒体网关,媒体网关连接有多个用户终端设备(例如电话等)。媒体网关上运行的可以是MGCP协议、H248协议、NCS协议等。
媒体网关控制器实现一个会议呼叫时,向媒体网关申请一个会议资源。媒体网关接收到媒体网关控制器的申请会议资源的命令时,分配一个空闲的会议资源,同时给该会议资源一个标识返回给媒体网关控制器。媒体网关控制器以后使用此标识对会议资源进行操作。媒体网关控制器下发命令给媒体网关要求将会议的召集者加入到该会议(使用媒体网关分配的会议标识)中,媒体网关将第一个会议成员加入到会议中,并且给该会议成员分配一个标识返回给媒体网关控制器,方便媒体网关控制器对该会议成员进行操作。媒体网关控制器然后一个一个的下发命令给媒体网关,将会议的参与者加入到该会议中(使用媒体网关分配的会议标识),媒体网关将每一个会议成员加入到会议中,并且给每一个会议成员分配一个标识符返回给媒体网关控制器,方便媒体网关控制器对该会议成员进行操作。
会议召集者为具有特殊权限的用户终端,会议参与者为一般权限的用户终端。对媒体网关来说,其为每一个会议成员分配一个标识,并不区分是会议的召集者还是会议的参与者。
参阅图2,采用例外通配符,由会议的召集者发送命令要求向各个会议的参与者放音乐的实现过程如下:
步骤10:会议召集者发送命令向会议的参与者放音乐,其中不包括召集者本身。
召集者可以使用例外通配符“!”后面跟媒体网关为会议召集者分配的标识作为命令参数,发送一个命令要求除会议召集者之外,会议中所有的成员都听音乐;或者召集者通过触发特定的用户事件作为命令。
步骤20:媒体网关控制器下发包括例外通配符“!”的命令给媒体网关,要求给除会议召集者的会议成员放音乐。
媒体网关将召集者的命令或用户事件上报媒体网关控制器。如果上报的是用户事件,则由媒体网关控制器来产生带通配符“!”和召集者标识的命令。同时,命令中还包括会议标识(域标识,即命令针对该域内的成员)。
步骤30:媒体网关解释命令,对会议参与者放音乐。
媒体网关通过会议标识,可以确定媒体网关控制器操作的是那个会议。当读到会议成员标识符时发现有通配符“!”,媒体网关就遍历该会议中的每一个会议成员,如果发现其与通配符“!”后跟着的会议成员标识不相等,就执行在该会议成员上放音乐的操作。从而给每一个会议的参与者放音乐,无需对会议的召集者放音乐。
当然,也可由媒体网关向媒体网关控制器上报包含例外通配符和例外成员标识的命令,由媒体网关控制器解释并执行相应操作。
在MGCP协议、H248协议和NCS协议或其他协议上均可按上述方法实现通配,如:
在MGCP协议中可以对端点(Endpoint)标识,连接(Connection)标识,和请求事件(RequestEvent)标识进行这样的通配定义。
当使用MGCP协议表示上报除端点标识2-5外,所有的端点都投入服务命令为:
RSIP 120!aaln/[2-5]@domain.com mgcp 1.0
RM:restart
那么当使用MGCP协议表示给一个会议端点上除一个连接标识1外所有连接放音的命令为:
RQNT 1201 aaln/1@rgw-2567.whatever.net MGCP 1.0
X:0123456789AC
S:bau/pa(an=1)@!1
那么当使用MGCP协议表示监视一个端点上线包(Line Package)中除摘机(hu)的事件的命令为:
RQNT 1201 aaln/1@rgw-2567.whatever.net MGCP 1.0
X:0123456789AC
R:L/!hu
在H248协议中可以对上下文(Context)标识和终端(Termination)标识,事件(Event)标识和流(Stream)标识进行这样的通配定义。
当使用H248协议表示上报除终端标识1外,所有的端点都投入服务命令为:
MEGACO/1[124.124.124.222]
Transaction=9998{
Context=-{
ServiceChange=!A1{Services{
Method=Restart,
ServiceChangeAddress=55555,Profile=ResGW/1}
}
}
}
那么当使用H248协议表示删除一个网关除上下文标识为5000的所有上下文:
MEGACO/1[123.123.123.4]:55555
Transaction=50009{
Context=!5000{
Subtract=*{}
}
}
当使用H248协议表示监视一个端点上模拟线包(Analog Line SupervisionPackage)中除摘机(of)的事件的命令为:
MEGACO/1[123.123.123.4]:55555
Transaction=50006{
Context=5000{
Modify=A5555{
Events=1235{al/!of}
}
}
}
在NCS协议中可以对端点(Endpoint)标识,连接(Connection)标识,和请求事件(RequestEvent)标识进行这样的通配定义。
当使用NCS协议表示上报除端点标识2-5外,所有的端点都投入服务命令为:
RSIP 120!aaln/[2-5]@domain.com mgcp 1.0
RM:restart
当使用NCS协议表示给一个会议端点上除一个连接标识1外所有连接放音的命令为:
RQNT 1201 aaln/1@rgw-2567.whatever.net MGCP 1.0
X:0123456789AC
S:bau/pa(an=1)@!1
当使用NCS协议表示监视一个端点上线包(Line Package)中除摘机(hu)的事件的命令为:
RQNT 1201 aaln/1@rgw-2567.whatever.net MGCP 1.0
X:0123456789AC
R:L/!hu
对于在其他系统中使用例外通配符,其原理与上述相同。