本发明涉及无线通信技术领域,特别涉及一种业务触发的方法和设备。
背景技术:
ip多媒体子系统(ipmultimediasubsystem,ims)是3gpp(3rdgenerationpartnershipproject,第三代合作伙伴计划)提出的一个全ip架构的新的核心网络,ims的出现为在电信网络中开展丰富的多媒体业务及业务组合提供了强有力的支持。
在ims业务体系中,业务触发是ims业务提供的重要一环,每个ims业务用户都拥有对应的业务属性(serviceprofile),在这个业务属性中包含了与业务触发相关的数据,如初始过滤准则(initialfiltercriteria,ifc)。并且ims体系采用了基于初始过滤准则的业务触发机制,每个ims业务用户都有对应的初始过滤准则触发链,每个初始过滤准则触发链中包括一个或多个初始过滤准则,每个初始过滤准则对应于一个优先级数值,并且优先级数值为正整数,优先级数值越小,优先级越高。每个初始过滤准则包括零个或一个触发点(trigger,tp),以及一个对应的。
ims体系基于初始过滤原则的业务触发的核心思想是:如图1所示,s-cscf(serving-callsessioncontrolfunction,服务类型的会话控制功能)通过分析sip(sessioninitiationprotocol,会话发起协议)初始请求消息,将sip初始请求消息与初始过滤准则触发链中优先级最高的初始过滤准则中配置在触发点中的spt(servicepointtrigger,业务点触发)进行匹配,如果匹配成功,则将该sip消息转发至该初始过滤原则对应的应用服务器;如果不匹配,则根据优先级顺序,将请求消息中的spt,与触发链中优先级其次高的初始过滤准则中配置在触发点中的spt进行匹配,并判断是否匹配成功。根据该触发规则,依次将触发链中所有初始过滤规则触发完毕,并且,触发机制不感知触发链的每一次匹配结果,业务触发机制存在不确定性。
基于初始过滤准则的业务触发机制中,将各个初始过滤准则根据优先级顺序组成单向的触发链,在进行业务触发时,需要将触发链中的每一个初始过滤准则与初始请求消息进行匹配,从而导致目前的业务触发机制不够灵活。
技术实现要素:
本发明提供一种业务触发的方法和设备,实现了业务触发机制灵活的触发业务。
第一方面,提供了一种业务触发的方法,该方法包括:
服务类型的会话控制功能s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果;并根据所述匹配结果,从所述当前使用的初始过滤准则对应的操作方式中确定所述匹配结果对应的操作方式;然后所述s-cscf执行确定的所述操作方式对应的操作。
在第一方面的基础上,可选的,若所述匹配结果为匹配成功,则所述s-cscf将需要当前使用的初始过滤准则对应的应用服务器处理的请求消息发送给所述应用服务器,并确定所述应用服务器根据所述请求消息执行相应的操作的执行结果;所述s-cscf确定所述执行结果对应的操作方式,并将所述执行结果对应的操作方式作为所述匹配结果对应的操作方式。
在第一方面的基础上,可选的,若所述操作方式为更换当前使用的初始过滤准则,则所述s-cscf确定所述操作方式对应的优先级数值,并将确定的所述优先级数值对应的初始过滤准则作为当前使用的初始过滤准则;
若所述操作方式为退出触发链,则所述s-cscf退出所述初始过滤准则触发链,并将所述用户的初始请求消息对应的响应消息路由至所述初始请求消息对应的目标设备;若所述操作方式为终止业务,则所述s-cscf退出所述初始过滤准则触发链,并终止所述初始请求消息对应的业务请求。
在第一方面的基础上,可选的,还包括:若所述当前使用的初始过滤准则对应的操作方式中没有所述匹配结果对应的操作方式,则所述s-cscf将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
在第一方面的基础上,可选的,若所述当前使用的初始过滤准则对应的操作方式中没有所述应用服务器的执行结果对应的操作方式,则所述s-cscf将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
在第一方面的基础上,可选的,所述当前使用的初始过滤准则对应的操作方式包括匹配失败对应的操作方式和匹配成功对应的操作方式。
在第一方面的基础上,可选的,所述匹配失败对应的操作方式采用unmatch_next参数表示,所述匹配成功对应的操作方式采用action_after_trigger参数表示;其中,所述action_after_trigger参数包括trigger_status参数和next_action参数;所述trigger_status参数用于表示所述应用服务器的执行结果,所述next_action参数用于表示所述应用服务器的执行结果对应的操作方式;所述unmatch_next参数的取值包括优先级数值、break、terminate中的任一一个;所述next_action参数的取值包括优先级数值、break、terminate中的任一一个。
在第一方面的基础上,可选的,在所述unmatch_next参数的取值为所述优先级数值时,表示所述匹配失败对应的操作方式为所述更换当前使用的初始过滤准则;在所述unmatch_next参数的取值为所述break时,表示所述匹配失败对应的操作方式为所述退出触发链;在所述unmatch_next参数的取值为所述terminate时,表示所述匹配失败对应的操作方式为所述终止业务;
在所述next_action参数的取值为所述优先级数值时,表示所述匹配成功对应的操作方式为所述更换当前使用的初始过滤准则;在所述next_action参数的取值为所述break时,表示所述匹配成功对应的操作方式为所述退出触发链;在所述next_action参数的取值为所述terminate时,表示所述匹配成功对应的操作方式为所述终止业务。
在第一方面的基础上,可选的,在将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果时,所述s-cscf确定所述将初始过滤准则触发链中当前使用的初始过滤准则对应的匹配条件组;所述s-cscf根据所述匹配条件组,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
在第一方面的基础上,可选的,所述当前使用的初始过滤准则对应的匹配条件组包括至少一个匹配条件。
在第一方面的基础上,可选的,针对所述匹配条件组中任意一个匹配条件,所述s-cscf确定所述匹配条件中需要匹配的关键信息;若所述初始请求消息中存在所述需要匹配的关键信息,则确定用户的初始请求消息与所述匹配条件对应的匹配结果为匹配成功,否则,确定用户的初始请求消息与所述匹配条件对应的匹配结果为匹配失败;根据所述匹配条件组的每一个匹配条件对应的匹配结果,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
第二方面,提供了一种业务触发的设备,包括:确定模块,用于将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果;处理模块,用于根据所述匹配结果,从所述当前使用的初始过滤准则对应的操作方式中确定所述匹配结果对应的操作方式;控制模块,用于执行确定的所述操作方式对应的操作。
在第二方面的基础上,可选的,所述处理模块具体用于若所述匹配结果为匹配成功,则将需要当前使用的初始过滤准则对应的应用服务器处理的请求消息发送给所述应用服务器,并确定所述应用服务器根据所述请求消息执行相应的操作的执行结果;确定所述执行结果对应的操作方式,并将所述执行结果对应的操作方式作为所述匹配结果对应的操作方式。
在第二方面的基础上,可选的,所述控制模块具体用于若所述操作方式为更换当前使用的初始过滤准则,则确定所述操作方式对应的优先级数值,并将确定的所述优先级数值对应的初始过滤准则作为当前使用的初始过滤准则;若所述操作方式为退出触发链,则退出所述初始过滤准则触发链,并将所述用户的初始请求消息对应的响应消息路由至所述初始请求消息对应的目标设备;若所述操作方式为终止业务,则退出所述初始过滤准则触发链,并终止所述初始请求消息对应的业务请求。
在第二方面的基础上,可选的,所述处理模块还用于:若所述当前使用的初始过滤准则对应的操作方式中没有所述匹配结果对应的操作方式,则将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
在第二方面的基础上,可选的,所述控制模块还用于:若所述当前使用的初始过滤准则对应的操作方式中没有所述应用服务器的执行结果对应的操作方式,则所述s-cscf将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
在第二方面的基础上,可选的,所述当前使用的初始过滤准则对应的操作方式包括匹配失败对应的操作方式和匹配成功对应的操作方式;所述匹配失败对应的操作方式采用unmatch_next参数表示,所述匹配成功对应的操作方式采用action_after_trigger参数表示;其中,所述action_after_trigger参数包括trigger_status参数和next_action参数;所述trigger_status参数用于表示所述应用服务器的执行结果,所述next_action参数用于表示所述应用服务器的执行结果对应的操作方式;所述unmatch_next参数的取值包括优先级数值、break、terminate中的任一一个;所述next_action参数的取值包括优先级数值、break、terminate中的任一一个。
在第二方面的基础上,可选的,在所述unmatch_next参数的取值为所述优先级数值时,表示所述匹配失败对应的操作方式为所述更换当前使用的初始过滤准则;在所述unmatch_next参数的取值为所述break时,表示所述匹配失败对应的操作方式为所述退出触发链;在所述unmatch_next参数的取值为所述terminate时,表示所述匹配失败对应的操作方式为所述终止业务;在所述next_action参数的取值为所述优先级数值时,表示所述匹配成功对应的操作方式为所述更换当前使用的初始过滤准则;在所述next_action参数的取值为所述break时,表示所述匹配成功对应的操作方式为所述退出触发链;在所述next_action参数的取值为所述terminate时,表示所述匹配成功对应的操作方式为所述终止业务。
在第二方面的基础上,可选的,所述确定模块具体用于确定所述将初始过滤准则触发链中当前使用的初始过滤准则对应的匹配条件组;根据所述匹配条件组,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
在第二方面的基础上,可选的,所述当前使用的初始过滤准则对应的匹配条件组包括至少一个匹配条件;所述确定模块具体用于:针对所述匹配条件组中任意一个匹配条件,确定所述匹配条件中需要匹配的关键信息;若所述初始请求消息中存在所述需要匹配的关键信息,则确定用户的初始请求消息与所述匹配条件对应的匹配结果为匹配成功,否则,确定用户的初始请求消息与所述匹配条件对应的匹配结果为匹配失败;根据所述匹配条件组的每一个匹配条件对应的匹配结果,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
由于s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配后,需要确定当前使用的初始过滤准则与用户的初始请求消息的匹配结果,因此,本发明的触发机制可以感知触发链的每一次触发结果;在确定当前使用的初始过滤准则与用户的初始请求消息的匹配结果后,s-cscf根据该匹配结果对应的操作方式,执行下一步的操作。针对不同的业务,可以灵活地执行该业务对应的操作,不必将初始过滤准则触发链中的每一个初始过滤准则都依次匹配。
附图说明
图1为背景技术中基于初始过滤原则的业务触发方法示意图;
图2为本发明实施例的网络架构示意图;
图3为本发明实施例执行订阅业务时的内部交互示意图;
图4为本发明实施例的ifc数据模型;
图5为本发明实施例业务触发方法的流程图;
图6为本发明实施例业务触发方法示意图一;
图7为本发明实施例业务触发方法示意图二;
图8为本发明实施例业务触发方法示意图三;
图9为本发明实施例业务触发方法示意图四;
图10a为现有技术中spt对应的参数;
图10b为本发明实施例中spt对应的参数;
图11为本发明实施例业务触发设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图2为本发明实施例中的应用场景,包括:用户设备ue、p-cscf(proxy-callsessioncontrolfunction,代理呼叫会话控制功能)、s-cscf、hss(homesubscriberserver,归属用户服务器)、as(applicationserver,应用服务器)。
其中,用户设备ue:用于生成sip初始请求信号,并将生成的sip初始请求信号发送至ims系统;以及接收从ims系统返回的响应信号。
p-cscf:为接入网到ims的最先连接点,是ims系统中用户设备ue的第一个接触点,p-cscf在ims系统中的作用类似于执行代理服务,所有的sip信令流无论来自用户设备ue,或者是发送给用户设备ue,都必须通过p-cscf转发。p-cscf在ims系统中负责验证请求,并将验证后的请求转发给指定的目标,并且处理和转发响应。
具体的,p-cscf用于将用户设备ue接收到的sip请求和响应转发给s-cscf;或者p-cscf用于将sip请求和响应转发给用户设备ue。
s-cscf:为ims系统中的控制核心,位于归属网络,为用户设备ue提供会话控制和注册。s-cscf用于接收p-cscf转发的用户设备的sip初始请求消息,或者是接收主叫网络发送的sip初始请求消息;并且在确定用户注册成功时,通过diameter协议的cx接口从hss下载用户配置,并且该用户配置中包括用户对应的ifc;s-cscf还用于基于isc接口与各应用服务器相连。根据从hss下载的用户配置中的ifc,在sip初始请求消息与ifc匹配时,触发该ifc对应的应用服务器执行操作,将用户的sip请求消息路由到相应的应用服务器。
hss:为ims系统中所有与用户和服务相关的数据的主要的数据存储器。存储在hss中的数据主要包括用户身份、注册信息、接入参数和初始过滤准则ifc。
as:位于用户的归属网络或者第三方位置。其中第三方位置指一个网络或者一个独立的应用服务器。as的主要功能有:处理和影响从s-cscf发来的sip请求消息的能力;向s-cscf发送处理后的sip请求消息。
例如,用户请求subscribe(订阅)业务,则ue、p-cscf、s-cscf、hss和as的系统内部结构交互示意图如图3所示,假设该subscribe业务需要as1检查权限,as2实际处理。并且,as1对应第一初始过滤准则,as2对应第二初始过滤准则,第一初始过滤准则的优先级高于第二初始过滤准则,其中初始过滤准则包含在业务配置数据中,并且该业务配置数据为s-cscf通过diameter协议的cx接口从hss下载的。
如图3所示,具体的订阅流程为:用户设备ue将sip初始请求消息发送给p-cscf,p-cscf将接收到的用户设备ue的初始请求消息转发给s-cscf;s-cscf分析sip初始请求消息,将sip初始请求消息中的信息与第一初始过滤准则进行匹配,若匹配成功,则s-cscf触发第一初始过滤准则对应的应用服务器as1,s-cscf将处理后的用户设备ue的sip请求消息发送给as1,as1响应并处理该sip请求消息,根据s-cscf发送的sip请求消息,对用户的权限进行验证,并将验证处理后的初始请求信号发送给s-cscf;s-cscf将sip初始请求消息中的spt与第二初始过滤准则进行匹配,若匹配成功,则s-cscf触发第二初始过滤准则对应的应用服务器为as2,s-cscf将接收到的as1处理后的初始请求消息发送给as2,as2响应并处理该初始请求消息,在对用户的认证业务处理后,as2将处理后得到的的初始请求信号的最终响应消息发送给s-cscf;s-cscf将用户认证业务请求的最终应答消息通过p-cscf转发给用户设备ue。
如图4所示,本发明实施例的ifc数据模型。其中,s-cscf从hss下载的业务配置数据(serviceprofile)包括一个或多个公共标识(publicidentification)、零个或一个核心网业务鉴权(corenetworkserviceauthorization)、零个或多个初始过滤准则、零个或多个共享初始过滤准则集(sharedifcset)。
并且,每一个初始过滤准则的属性参数包括优先级数值(priority)、profilepartindicator(业务相关性)。
其中,priority为整数型数值,并且数值越小,优先级越高。
profilepartindicator属于枚举类型,可取的数值包括注册(registered)和未注册(unregistered)。在取值为注册时,表示只有用户在线登录成功时才能享受的业务;在取值为未注册时,只有用户不在线时才能享受的业务。
每一个初始过滤准则包括零个或一个触发点(triggerpoint,tp),和一个应用服务器(applicationserver,as)。
其中,触发点定义了ifc的触发匹配条件,每一个触发点是一个cnf(conjunctivenormalform)或dnf(disjunctivenormalform)格式的布尔表达式。触发点中包括一个或多个业务触发器(servicepointtrigger,spt)。
若tp缺省,即初始过滤准则中包括零个触发点,则表示无条件触发到该初始过滤准则对应的应用服务器as。
应用服务器的属性参数包括服务器名称(servicename)和defaulthandling(默认处理)。
其中,服务器名称为sipurl形式,用于其他设备同as联系。
defaulthandling决定在as无法到达时对会话是否释放,defaulthandling可取的值包括session_continued和session_terminated。
每一个初始过滤准则中还包括操作方式,并且初始过滤准则对应的操作方式包括两种类型:匹配成功对应的操作方式和匹配失败对应的操作方式。
如图5所示,本发明实施例提供一种业务触发的方法,包括:
步骤501、将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果;
步骤502、根据所述匹配结果,从所述当前使用的初始过滤准则对应的操作方式中确定所述匹配结果对应的操作方式;
步骤503、执行确定的所述操作方式对应的操作。
本发明实施例的初始过滤准则触发链中包括一个或多个初始过滤准则。
并且,在s-cscf将初始过滤准则与用户的请求消息进行匹配时,均是将用户的初始请求消息与每一个初始过滤准则进行匹配。
用户的初始请求消息与初始过滤准则的匹配结果包括匹配成功和匹配失败。
初始过滤准则对应的操作方式包括匹配成功对应的操作方式和匹配失败对应的操作方式。并且,每一个初始过滤准则中包括零个或一个匹配失败对应的操作方式,以及零个、一个或多个匹配成功对应的操作方式。
在用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败时,s-cscf需要从当前使用的初始过滤准则对应的操作方式中确定匹配失败对应的操作方式;在用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功时,s-cscf需要从当前使用的初始过滤准则对应的操作方式中确定匹配成功对应的操作方式。
下面针对匹配失败和匹配成功分别进行说明。
一、用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败。
1、若当前使用的初始过滤准则中包括零个匹配失败对应的操作方式。
在s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败时。在s-cscf从当前使用的初始过滤准则对应的操作方式中选择匹配失败对应的的操作方式时,确定当前使用的初始过滤准则对应的操作方式没有匹配失败对应的操作方式,则所述s-cscf将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
2、若当前使用的初始过滤准则中包括一个匹配失败对应的操作方式。
在s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败时,则从当前使用的初始过滤准则对应的操作方式中选择匹配失败对应的的操作方式,执行匹配失败时的操作方式对应的操作。
本发明实施例中的匹配失败对应的操作方式包括:更换当前使用的初始过滤准则、退出触发链、终止业务。
需要说明的是,在为当前使用的初始过滤准则配置匹配失败对应的操作方式时,从上述三种匹配失败对应的操作方式中选择一种操作方式。
下面根据不同的操作方式分别进行说明。
a、匹配失败对应的操作方式为更换当前使用的初始过滤准则。
具体的,在匹配失败对应的操作方式为更换当前使用的初始过滤准则时,则s-cscf确定所述操作方式对应的优先级数值,并将确定的所述优先级数值对应的初始过滤准则作为当前使用的初始过滤准则。
例如,当前使用的初始过滤准则为初始过滤准则触发链中第三个初始过滤准则,在将当前使用的初始过滤准则与初始请求消息进行匹配后,确定匹配结果为匹配失败,并且匹配失败对应的操作方式为更换当前使用的初始过滤准则,并且对应的初始过滤准则得优先级为5,则将初始过滤准则触发链中第五个初始过滤准则作为当前使用的初始过滤准则。
b、匹配失败对应的操作方式为退出触发链。
具体的,在匹配失败对应的操作方式为退出触发链时,则s-cscf退出所述初始过滤准则触发链,并将所述用户的初始请求消息对应的响应消息路由至目标设备。
本发明实施例在将当前使用的初始过滤准则与初始请求消息进行匹配,并确定匹配结果为匹配失败后,确定匹配失败对应的操作方式为退出触发链,则在退出触发链后,需要将用户的初始请求消息对应的响应消息路由至目标设备。并且,在用户请求的业务类型不同时,目标设备也不相同。
业务类型包括但不限于:
会话主叫业务、会话被叫业务、注册业务、订阅业务。
其中,目标设备包括但不限于:
i-cscf(interrogation-callsessioncontrolfunction,问询会话控制功能)、p-cscf、agcf(accessgatewaycontrolfunction,接入网关控制功能)、s-cscf、mgcf(mediagatewaycontrolfunction,媒体网关控制功能)。
c、匹配失败对应的操作方式为终止业务。
具体的,在匹配失败对应的操作方式为终止业务时,则s-cscf退出所述初始过滤准则触发链,并终止所述初始请求消息对应的业务请求。
本发明实施例在将当前使用的初始过滤准则与初始请求消息进行匹配,并确定匹配结果为匹配失败后,确定匹配失败对应的操作方式为终止业务,则s-cscf不再处理该用户的请求消息,实现tryexception(异常处理)语义。
本发明实施例匹配失败时的操作方式可以采用unmatch_next参数表示,在匹配失败时的操作方式采用unmatch_next参数表示时,unmatch_next参数对应的取值为优先级数值、break、terminate中的一个。
1)在unmatch_next参数取值为优先级数值时,表示所述匹配失败对应的操作方式为所述更换当前使用的初始过滤准则。
在s-cscf确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败后,将优先级数值为unmatch_next参数中的priority数值的初始过滤准则,与用户的初始请求消息进行匹配。即在unmatch_next参数取值为优先级数值时,实现的是条件分支和跳转语义。
2)在unmatch_next参数取值为break时,表示所述匹配失败对应的操作方式为所述退出触发链。
在s-cscf确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败后,退出该初始过滤准则触发链,不再将后续初始过滤准则与用户的初始请求消息进行匹配,并将用户的初始请求消息对应的响应消息返回给用户。
3)在unmatch_next参数取值为terminate时,表示所述匹配失败对应的操作方式为所述终止业务。
在s-cscf确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败后,退出该初始过滤准则触发链,并终止该用户的业务请求,实现tryexception的语义。
二、用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功。
在s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功时,本发明实施例的s-cscf根据下列方式确定匹配成功对应的操作方式。
若匹配结果为匹配成功,则所述s-cscf将需要所述当前使用的初始过滤准则对应的应用服务器处理的请求消息发送给所述应用服务器,并确定所述应用服务器根据所述请求消息执行相应的操作的执行结果;所述s-cscf确定所述执行结果对应的操作方式,并将所述应用服务器的执行结果对应的操作方式,作为所述匹配结果对应的操作方式。
实施中,若确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功,则s-cscf触发当前使用的初始过滤准则对应的应用服务器,使当前使用的初始过滤准则对应的应用服务器根据用户的请求消息执行相应的操作。
在当前使用的初始过滤准则对应的应用服务器接收到s-cscf发送的触发消息后,需要将执行结果返回给s-cscf,s-cscf根据应用服务器返回的执行结果,将应用服务器的执行结果对应的操作方式,作为匹配成功对应的操作方式。
本发明实施例的执行结果包括执行成功和执行失败。具体的,还可以将执行失败根据失败原因进一步划分。例如,执行故障性失败和无权限执行失败。
本发明实施例根据当前使用的初始过滤准则对应的应用服务器的执行结果不同,可以为不同执行结果配置不同的操作方式。因此,s-cscf在确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功后,还需要根据触发的应用服务器的执行结果,进一步确定该执行结果对应的操作方式。
1、若当前使用的初始过滤准则中包括零个匹配成功对应的操作方式。
在s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功时。在s-cscf从当前使用的初始过滤准则对应的操作方式中选择匹配成功对应的的操作方式时,确定当前使用的初始过滤准则对应的操作方式没有匹配成功对应的操作方式,则所述s-cscf将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
2、若当前使用的初始过滤准则中包括一个或多个匹配成功对应的操作方式。
在s-cscf将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功时,则从当前使用的初始过滤准则对应的操作方式中选择匹配成功对应的的操作方式。
在确定出匹配成功对应的的操作方式后,s-cscf根据当前使用的初始过滤准则对应的应用服务器反馈的执行结果,进一步判断该执行结果对应的操作方式。
若s-cscf从当前使用的初始过滤准则对应的操作方式中确定出该执行结果对应的操作方式,则执行该执行结果对应的操作。
若s-cscf从当前使用的初始过滤准则对应的操作方式中没有确定出该执行结果对应的操作方式,则所述s-cscf将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
本发明实施例中的应用服务器的执行结果对应的操作方式包括:更换当前使用的初始过滤准则、退出触发链、终止业务。
需要说明的是,在为应用服务器的执行结果对应的操作方式时,从上述三种应用服务器的执行结果对应的操作方式中选择一种操作方式。并且,本发明实施例确定出的应用服务器的执行结果对应的操作方式即为匹配成功时的操作方式。
下面根据不同的操作方式分别进行说明。
a、应用服务器的执行结果对应的操作方式为更换当前使用的初始过滤准则。
具体的,在应用服务器的执行结果对应的操作方式为更换当前使用的初始过滤准则时,则s-cscf确定所述操作方式对应的优先级数值,并将确定的所述优先级数值对应的初始过滤准则作为当前使用的初始过滤准则。
例如,当前使用的初始过滤准则为初始过滤准则触发链中第二个初始过滤准则,在将当前使用的初始过滤准则与初始请求消息进行匹配后,确定匹配结果为匹配成功,则触发当前使用的初始过滤准则对应的应用服务器执行操作,假设应用服务器执行成功,并且执行成功对应的操作方式为更换当前使用的初始过滤准则,并且对应的初始过滤准则得优先级为4,则将初始过滤准则触发链中第四个初始过滤准则作为当前使用的初始过滤准则。
b、应用服务器的执行结果对应的操作方式为退出触发链。
具体的,在应用服务器的执行结果对应的操作方式为退出触发链时,则s-cscf退出所述初始过滤准则触发链,并将所述用户的初始请求消息对应的响应消息路由至目标设备;
本发明实施例在将当前使用的初始过滤准则与初始请求消息进行匹配,并确定匹配结果为匹配成功,则触发当前使用的初始过滤准则对应的应用服务器执行操作,假设应用服务器执行成功,并且执行成功对应的操作方式为退出触发链,则在退出触发链后,需要将用户的初始请求消息对应的响应消息路由至目标设备。并且,在用户请求的业务类型不同时,目标设备也不相同。
其中,目标设备包括但不限于:
用户设备、i-cscf、p-cscf。
c、应用服务器的执行结果对应的操作方式为终止业务。
具体的,在应用服务器的执行结果对应的操作方式为终止业务时,则s-cscf退出所述初始过滤准则触发链,并终止所述初始请求消息对应的业务请求。
本发明实施例在将当前使用的初始过滤准则与初始请求消息进行匹配,并确定匹配结果为匹配成功,则触发当前使用的初始过滤准则对应的应用服务器执行操作,假设应用服务器执行成功,并且执行成功对应的操作方式为为终止业务,则s-cscf不再处理该用户的请求消息,实现tryexception语义。
本发明实施例匹配成功时的操作方式可以采用action_after_trigger参数表示,在匹配成功时的操作方式采用action_after_trigger参数表示时,action_after_trigger参数包括两部分内容,分别是:trigger_status参数和next_action参数。
其中,trigger_status参数表示当前使用的初始过滤准则对应的应用服务器的执行结果。trigger_status参数采用正则表达式表示当前使用的初始过滤准则对应的应用服务器的执行结果。
例如,在应用服务器的执行结果包括执行成功和执行失败时,并且采用200~299的状态码表示应用服务器执行成功,采用400~699的状态码表示应用服务器执行失败,则在表示应用服务器的执行结果时,可以将trigger_status参数采用正则表达式2..表示执行成功,将trigger_status参数采用正则表达式[4-6]..表示执行失败。
本发明实施例中的next_action参数对应的取值为优先级数值、break、terminate中的一个。
1)在next_action参数取值为优先级数值时,表示所述执行结果对应的操作方式为所述更换当前使用的初始过滤准则。
在s-cscf确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功后,将优先级数值为next_action参数中的priority数值的初始过滤准则,与用户的初始请求消息进行匹配。即在next_action参数取值为优先级数值时,实现的是条件分支和跳转语义。
2)在next_action参数取值为break时,表示所述执行结果对应的操作方式为所述退出触发链。
在s-cscf确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功后,退出该初始过滤准则触发链,不再将后续初始过滤准则与用户的初始请求消息进行匹配,并将用户的初始请求消息对应的响应消息返回给用户。
3)在next_action参数取值为terminate时,表示所述执行结果对应的操作方式为所述终止业务。
在s-cscf确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功后,退出该初始过滤准则触发链,并终止该用户的业务请求,实现tryexception的语义。
例如,本发明实施例的执行结果包括执行成功、执行故障性失败和无权限执行失败三种。并且执行成功对应的应用服务器的状态码为200~299;无权限执行失败对应的应用服务器的状态码为403;执行故障性失败对应的应用服务器的状态码为400~402、404~699。
比如,在当前使用的初始过滤准则中包括一个action_after_trigger参数时,action_after_trigger参数的结构形式可以如表1所示。
表1
如表1所示的action_after_trigger参数,在应用服务器返回的状态码为200~299中的任一个时,确定应用服务器的执行状态为执行成功,并且确定对应的next_action参数为break,即该执行结果对应的操作方式为退出触发链。
比如,在当前使用的初始过滤准则中包括三个action_after_trigger参数时,action_after_trigger参数的结构形式可以如表2所示。
表2
如表2所示的action_after_trigger参数,在应用服务器返回的状态码为200~299中的任一个时,确定应用服务器的执行状态为执行成功,并且确定对应的next_action参数为优先级数值4,则执行的操作为将优先级为4的初始过滤准则作为当前使用的初始过滤准则;在应用服务器返回的状态码为400、401、402、404~699中的任一个时,确定应用服务器的执行状态为执行故障性失败,并且确定对应的next_action参数为break,即该执行结果对应的操作方式为退出触发链;在应用服务器返回的状态码为403时,确定应用服务器的执行状态为无权限执行失败,并且确定对应的next_action参数为terminate,即该执行结果对应的操作方式为终止业务。
需要说明的是,由于ifc数据架构中应用服务器的属性参数defaulthandling种定义有as无法到达时对会话是否释放;而本发明实施例的action_after_trigger参数中定义了在当前使用的初始过考虑准则与用户的初始请求消息匹配成功,并触发相应的as后,下一步需要执行的操作。在action_after_trigger参数中定义的下一步操作方式与应用服务器的属性参数defaulthandling的定义冲突时,执行action_after_trigger参数中定义的下一步操作方式对应的操作。
本发明实施例在ifc中扩展了0或1个unmatch_next参数,以及0或1或多个action_after_trigger参数,实现了初始过滤准则触发链的跳转和退出,使得业务的触发机制更加灵活。
例如,假设用户对应的业务配置数据中的初始过滤准则触发链中包括5个初始过滤准则,按照优先级从高到低依次为ifc1、ifc2、ifc3、ifc4和ifc5。ifc1对应的应用服务器为as1,ifc2对应的应用服务器为as2,ifc3对应的应用服务器为as3,ifc4对应的应用服务器为as4,ifc5对应的应用服务器为as5。
用户的初始请求消息中包括三个业务请求,分别业务一、业务二和业务三。并且执行业务一需要的应用服务器为as1和as3;执行业务二需要的应用服务器为as2和as5;执行业务三需要的应用服务器为as4。
下面根据现有技术的业务触发方式详细说明业务的触发方法。
若用户的初始请求消息中的只包括业务一,则在进行业务一的业务触发时。触发方法如图6所示,将用户的初始请求消息与ifc1进行匹配,确定匹配成功,则触发as1执行相应的操作;将用户的初始请求消息与ifc2进行匹配,确定匹配失败,不触发as2执行相应的操作;将用户的初始请求消息与ifc3进行匹配,确定匹配成功,则触发as3执行相应的操作;将用户的初始请求消息与ifc4进行匹配,确定匹配失败,不触发as4执行相应的操作;将用户的初始请求消息与ifc5进行匹配,确定匹配失败,不触发as5执行相应的操作。
若用户的初始请求消息中的只包括业务二,则在进行业务二的业务触发时。触发方法如图6所示,将用户的初始请求消息与ifc1进行匹配,确定匹配失败,不触发as1执行相应的操作;将用户的初始请求消息与ifc2进行匹配,确定匹配成功,则触发as2执行相应的操作;将用户的初始请求消息与ifc3进行匹配,确定匹配失败,不触发as3执行相应的操作;将用户的初始请求消息与ifc4进行匹配,确定匹配失败,不触发as4执行相应的操作;将用户的初始请求消息与ifc5进行匹配,确定匹配成功,则触发as5执行相应的操作。
若用户的初始请求消息中的只包括业务三,则在进行业务三的业务触发时。触发方法如图6所示,将用户的初始请求消息与ifc1进行匹配,确定匹配失败,不触发as1执行相应的操作;将用户的初始请求消息与ifc2进行匹配,确定匹配失败,不触发as2执行相应的操作;将用户的初始请求消息与ifc3进行匹配,确定匹配失败,不触发as3执行相应的操作;将用户的初始请求消息与ifc4进行匹配,确定匹配成功,并触发as4执行相应的操作;将用户的初始请求消息与ifc5进行匹配,确定匹配失败,不触发as5执行相应的操作。
从上述业务触发方法可以看出:现有技术在进行业务触发时,需要根据初始过滤准则的优先级,将所有初始过滤准则依次与用户的初始请求消息进行匹配,若匹配成功,则触发相应的应用服务器执行相应的操作;若触发失败,则不触发相应的应用服务器执行相应的操作。现有技术的业务触发方法为盲目的依次触发,触发过程较为繁琐。
下面根据本发明实施例的业务触发方式详细说明业务的触发方法。
本发明实施例将初始过滤准则触发链中的五个将初始过滤准则进行分组,分为第一组、第二组和第三组。第一组中包括ifc1和ifc3;第二组中包括ifc2和ifc5;第三组中包括ifc4。
其中,ifc1扩展的参数如表3所示。扩展1个unmatch_next参数,取值为优先级数值2;扩展一个action_after_trigger参数,其中,trigger_status参数定义为2..,next_action参数的取值为优先级数值3。
表3
ifc2扩展的参数如表4所示。扩展1个unmatch_next参数,取值为优先级数值4;扩展一个action_after_trigger参数,其中,trigger_status参数定义为2..,next_action参数的取值为优先级数值5。
表4
ifc3扩展的参数如表5所示。扩展1个unmatch_next参数,取值为优先级数值2;扩展一个action_after_trigger参数,其中,trigger_status参数定义为2..,next_action参数的取值为优先级数值2。
表5
ifc4扩展的参数如表6所示。扩展1个unmatch_next参数,取值为break;扩展一个action_after_trigger参数,其中,trigger_status参数定义为2..,next_action参数的取值为break。
表6
ifc5扩展的参数如表7所示。扩展1个unmatch_next参数,取值为优先级数值4;扩展一个action_after_trigger参数,其中,trigger_status参数定义为2..,next_action参数的取值为优先级数值4。
表7
根据上述各个ifc的扩展参数,若用户的初始请求消息中只包括业务一,触发方法如图7所示,则首先将用户的初始请求消息与ifc1进行匹配,确定匹配成功,则触发as1执行相应的操作;在as1执行成功后,并且根据ifc1中next_action参数取值为3,则将用户的初始请求消息与ifc3进行匹配,确定匹配成功,则触发as3执行相应的操作;在as3执行成功后,根据ifc3中next_action参数取值为2,则将用户的初始请求消息与ifc2进行匹配,确定匹配失败;根据ifc2中unmatch_next参数取值为4,则将用户的初始请求消息与ifc4进行匹配,确定匹配失败;根据ifc4中unmatch_next参数取值为break,则退出当前初始过滤准则触发链,并完成业务一的触发。
若用户的初始请求消息中只包括业务二,触发方法如图8所示,则首先将用户的初始请求消息与ifc1进行匹配,确定匹配失败,根据ifc1中unmatch_next参数取值为2,则将用户的初始请求消息与ifc2进行匹配,确定匹配成功,则触发as2执行相应的操作;在as2执行成功后,根据ifc2中next_action参数取值为5,则将用户的初始请求消息与ifc5进行匹配,确定匹配成功,则触发as5执行相应的操作;在as5执行成功后,根据ifc5中next_action参数取值为4,则将用户的初始请求消息与ifc4进行匹配,确定匹配失败,根据ifc4中unmatch_next参数取值为break,则退出当前初始过滤准则触发链,并完成业务二的触发。
若用户的初始请求消息中只包括业务三,触发方法如图9所示,则首先将用户的初始请求消息与ifc1进行匹配,确定匹配失败,根据ifc1中unmatch_next参数取值为2,则将用户的初始请求消息与ifc2进行匹配,确定匹配失败;根据ifc2中unmatch_next参数取值为4,则将用户的初始请求消息与ifc4进行匹配,确定匹配成功,则触发as4执行相应的操作;在as4执行成功后,根据ifc4中next_action参数取值为break,则退出当前初始过滤准则触发链,并完成业务三的触发。
从上述业务触发方法可以看出:本发明实施例扩展了ifc的参数,在ifc的参数中增加了unmatch_next参数和action_after_trigger参数,实现了跳转和退出初始过滤准则触发链的语义,从而实现了根据触发业务的不同,有目的并且快速的完成业务的触发。
本发明实施例提供了将当前使用的初始过滤准则与用户的初始请求消息进行匹配的方法。
具体的,所述s-cscf确定所述当前使用的初始过滤准则对应的匹配条件组;根据所述匹配条件组,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
其中,本发明实施例的匹配条件组包括至少一个匹配条件。
本发明实施例的匹配条件组为布尔表达式,并且该布尔表达式可以是cnf格式的布尔表达式,或者是dnf格式的布尔表达式。
例如,布尔表达式可以是((header=“from”content=“joe”)or(header=“to”content=“joe”)or(header=“p-asserted-identity”content=”joe”));
其中,header(头)表示属性;from(主叫)、to(被叫)、p-asserted-identity(身份标识)表示关键信息;匹配条件content=“joe”。
本发明实施例在将当前使用的初始过滤准则与用户的初始请求消息进行匹配时,具体的,根据下列方式确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果。
针对所述匹配条件组中任意一个匹配条件,所述s-cscf确定所述匹配条件中需要进行匹配的关键信息;若所述初始请求消息中存在所述需要进行匹配的关键信息,则确定所述匹配条件对应的匹配结果为匹配成功,否则,确定所述匹配条件对应的匹配结果为匹配失败;
根据所述当前使用的初始过滤准则对应的匹配条件组的每一个匹配条件对应的匹配结果,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
实施中,在确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果时,本发明实施例确定当前使用的初始过滤准则对应的匹配条件组中包括的至少一个匹配条件。并且针对每一个匹配条件,确定匹配条件中需要进行匹配的关键信息。例如,匹配条件是method(方式)=“message”时,确定该匹配条件中的关键信息为“message”。
在确定出匹配条件中需要进行匹配的关键信息后,判断初始请求消息中是否存在该关键信息,其中初始请求消息中的该关键信息可以为任意属性。
若初始请求消息中存在匹配条件中的关键信息,则确定该匹配条件成立;若初始请求消息中不存在匹配条件中的关键信息,则确定该匹配条件不成立。
由于本发明实施例的匹配条件组为布尔表达式,在多个匹配条件之间满足一定关系后,判断该匹配条件组是否成立。若成立,则确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配成功;若不成立,则确定用户的初始请求消息与当前使用的初始过滤准则的匹配结果为匹配失败。
具体的,本发明实施例在采用上述方法将用户的初始请求消息与当前使用的初始过滤准则进行匹配时,可以通过扩展spt的参数实现。
如图10a所示,为现有技术中spt对应的参数,包括requesturi(请求的uri)、sipmethod(sip方式)、sipheader(sip头)、sessioncare(会话情况)、sessiondescription(会话描述)。
如图10b所示,为本发明实施例spt对应的参数,包括requesturi、sipmethod、sipheader、sessioncare、sessiondescription、wholetext(全文本)。其中,wholetext表示全文本正则匹配,在本发明实施例中,表示从初始请求消息中进行全文本匹配,不限于消息的属性。
例如,wholetext可以为:
wholetext=(.(?<!\r\n))*?^[\t]*(invite|message)sip:.*sip/2.0\r\n。
其中,(.(?<!\r\n))*?表示首行文本,前面一定没有前导\r\n;用扩展的lookaround正则表达式(.(?<!\r\n))*?描述;
(invite|message)sip:.*sip/2.0表示消息类型形式为invitesip:1.2.3.4:5060sip/2.0。
本发明实施例通过扩展spt对应的参数,引入wholetext参数,从而简化了表示匹配条件组的布尔表达式。
下面以一个具体的例子进行说明。
例如,joe为vip用户,并且,在接收到joe的初始请求消息后,触发as1。具体的,在将joe的初始请求消息与初始过滤准则进行匹配时,匹配条件组可以为:
wholetext=“joe”;
即不需要再匹配header=“from”、header=“to”、header=“p-asserted-identity”,只要在初始请求消息中匹配出“joe”,则确定匹配成功,触发as1。
另外,在用户的初始请求消息中携带多body(消息体)时,只需要确定在多body中是否能够匹配出关键信息,不需要确定关键信息所属的body,因此,避免了在在用户的初始请求消息中携带多body时的二义性瑕疵。
基于同一发明构思,本发明实施例中还提供了一种对用户进行迁移的设备,由于该设备解决问题的原理与本发明实施例对用户进行迁移的方法相似,因此该设备的实施可以参见方法的实施,重复之处不再赘述。
如图11所示,本发明实施例提供一种业务触发的设备,包括:
确定模块1101,用于将初始过滤准则触发链中当前使用的初始过滤准则与用户的初始请求消息进行匹配,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果;
处理模块1102,用于根据所述匹配结果,从所述当前使用的初始过滤准则对应的操作方式中确定所述匹配结果对应的操作方式;
控制模块1103,用于执行确定的所述操作方式对应的操作。
可选的,所述处理模块1102,具体用于:
若所述匹配结果为匹配成功,则将需要当前使用的初始过滤准则对应的应用服务器处理的请求消息发送给所述应用服务器,并确定所述应用服务器根据所述请求消息执行相应的操作的执行结果;确定所述执行结果对应的操作方式,并将所述执行结果对应的操作方式作为所述匹配结果对应的操作方式。
可选的,所述控制模块1103,具体用于:
若所述操作方式为更换当前使用的初始过滤准则,则确定所述操作方式对应的优先级数值,并将确定的所述优先级数值对应的初始过滤准则作为当前使用的初始过滤准则;
若所述操作方式为退出触发链,则退出所述初始过滤准则触发链,并将所述用户的初始请求消息对应的响应消息路由至所述初始请求消息对应的目标设备;
若所述操作方式为终止业务,则退出所述初始过滤准则触发链,并终止所述初始请求消息对应的业务请求。
可选的,所述处理模块1102,还用于:
若所述当前使用的初始过滤准则对应的操作方式中没有所述匹配结果对应的操作方式,则将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
可选的,所述控制模块1103,还用于:
若所述当前使用的初始过滤准则对应的操作方式中没有所述应用服务器的执行结果对应的操作方式,则将所述初始过滤准则触发链中所述当前使用的初始过滤准则的下一条初始过滤准则,作为当前使用的初始过滤准则。
可选的,所述当前使用的初始过滤准则对应的操作方式包括匹配失败对应的操作方式和匹配成功对应的操作方式;
所述匹配失败对应的操作方式采用unmatch_next参数表示,所述匹配成功对应的操作方式采用action_after_trigger参数表示;其中,所述action_after_trigger参数包括trigger_status参数和next_action参数;所述trigger_status参数用于表示所述应用服务器的执行结果,所述next_action参数用于表示所述应用服务器的执行结果对应的操作方式;所述unmatch_next参数的取值包括优先级数值、break、terminate中的任一一个;所述next_action参数的取值包括优先级数值、break、terminate中的任一一个。
可选的,在所述unmatch_next参数的取值为所述优先级数值时,表示所述匹配失败对应的操作方式为所述更换当前使用的初始过滤准则;在所述unmatch_next参数的取值为所述break时,表示所述匹配失败对应的操作方式为所述退出触发链;在所述unmatch_next参数的取值为所述terminate时,表示所述匹配失败对应的操作方式为所述终止业务;
在所述next_action参数的取值为所述优先级数值时,表示所述匹配成功对应的操作方式为所述更换当前使用的初始过滤准则;在所述next_action参数的取值为所述break时,表示所述匹配成功对应的操作方式为所述退出触发链;在所述next_action参数的取值为所述terminate时,表示所述匹配成功对应的操作方式为所述终止业务。
可选的,所述确定模块1101,具体用于:
确定所述将初始过滤准则触发链中当前使用的初始过滤准则对应的匹配条件组;根据所述匹配条件组,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
可选的,所述当前使用的初始过滤准则对应的匹配条件组包括至少一个匹配条件;
所述确定模块1101,具体用于:
针对所述匹配条件组中任意一个匹配条件,确定所述匹配条件中需要匹配的关键信息;若所述初始请求消息中存在所述需要匹配的关键信息,则确定用户的初始请求消息与所述匹配条件对应的匹配结果为匹配成功,否则,确定用户的初始请求消息与所述匹配条件对应的匹配结果为匹配失败;根据所述匹配条件组的每一个匹配条件对应的匹配结果,确定用户的初始请求消息与所述当前使用的初始过滤准则的匹配结果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。