发明内容
本发明的目的就是能提供在软交换通信网络中能够支持多种用户终端的、基于SIP协议的、振铃状态下的呼叫转接业务。
针对上述问题的第一个方面,本发明提供了一种在软交换通信网络中实现呼叫转接的方法,其中,一个主叫终端与一个第一被叫终端之间已经建立通话,所述方法包含以下的步骤:
a)主叫终端所归属的软交换控制器通过一个应用服务器发送呼叫保持请求消息到第一被叫终端所归属的软交换控制器,以将主叫终端与第一被叫终端的呼叫保持住;
b)主叫终端所归属的软交换控制器通过该应用服务器发送呼叫建立请求消息到第二被叫所归属的软交换,以建立主叫终端与第二被叫终端之间的呼叫;
c)第二被叫终端所归属的软交换控制器通过该应用服务器发送呼叫建立响应消息给主叫终端所归属的软交换控制器;
d)主叫终端所归属的软交换控制器发送用于指示主叫终端在第一被叫终端与第二被叫终端之间建立呼叫转接的呼叫转接指示消息给应用服务器;
e)由应用服务器在第一被叫终端和第二被叫终端之间建立通话。
针对上述问题的第二个方面,本发明提供了一种在软交换通信网络的软交换控制器中用于进行呼叫转接的方法,其中,归属于该软交换控制器的一个主叫终端已与一个第一被叫终端建立通话,所述方法包含以下的步骤:
a)将一个呼叫保持请求消息发送给到一个应用服务器,用于请求保持所述主叫终端与第一被叫终端之间的呼叫;
b)将一个呼叫建立请求消息发送给应用服务器,用于请求建立所述主叫终端与第二被叫终端之间的呼叫;
c)将一个用于指示主叫终端在第一被叫终端与第二被叫终端之间建立呼叫转接的呼叫转接指示消息发送给应用服务器。
针对上述问题的第三个方面,本发明提供了一种在软交换通信网络中用于进行呼叫转接的软交换控制器,其中,归属于该软交换控制器的一个主叫终端已与一个第一被叫终端建立通话,该软交换控制器包括:
呼叫保持请求装置,用于将一个用于请求保持所述主叫终端与第一被叫终端之间呼叫的呼叫保持请求消息发送给到一个应用服务器;
呼叫建立请求装置,用于将一个用于请求建立所述主叫终端与第二被叫终端之间呼叫的呼叫建立请求消息发送给应用服务器;
呼叫转接指示装置,用于将一个用于指示主叫终端在第一被叫终端与第二用户终端之间建立呼叫转接的呼叫转接指示消息发送给应用服务器。
针对上述问题的第四个方面,本发明提供了一种在软交换通信网络的应用服务器中用于进行呼叫转接的方法,其中,一个主叫终端已与一个第一被叫终端建立通话,所述方法包含以下的步骤:
a)通知第一被叫终端所归属的软交换控制器,以保持所述主叫终端与第一被叫终端之间的呼叫;
b)通知第二被叫终端所归属的软交换控制器,以建立所述主叫终端与第二被叫终端之间的呼叫;
c)将第二被叫终端所归属软交换控制器发送的同意建立呼叫的呼叫建立响应消息发送给该主叫终端所归属的软交换控制器;
d)当接收到来自所述主叫终端所归属软交换装置的指示进行主叫终端在第一被叫终端与第二用户终端之间的呼叫转接的呼叫转接指示消息,在第一被叫终端和第二被叫终端之间建立通话。
针对上述问题的第五个方面,本发明提供了一种在软交换通信网络中用于进行呼叫转接的应用服务器,其中,一个主叫终端已与一个第一被叫终端建立通话,所述应用服务器包括:
通话保持通知装置,用于通知第一被叫终端所归属的软交换控制器,以保持所述主叫终端与第一被叫终端之间的呼叫;
呼叫建立通知装置,用于通知第二被叫终端所归属的软交换控制器,以建立所述主叫终端与第二被叫终端之间的呼叫;
呼叫响应通知装置,用于将第二被叫终端所归属软交换控制器发送的同意建立呼叫的呼叫建立响应消息发送给该主叫终端所归属的软交换控制器;
通话建立装置,用于当接收到来自所述主叫终端所归属软交换装置的指示进行主叫终端在第一被叫终端与第二用户终端之间的呼叫转接的呼叫转接指示消息,在第一被叫终端和第二被叫终端之间建立通话。
本发明提供了在软交换通信网络中的呼叫转接业务,能将传统PSTN网络下的业务引入到软交换通信网络,支持软交换通信网络中的各种类型的终端,而且该呼叫转接业务能在振铃状态下完成,弥补了现有技术的不足。
具体实施方式
软交换通信网络的网络示意图如图1所示。各个软交换域下IAD设备或AG设备通过H.248/MGCP协议接入软交换***,各个软件换域与应用服务器通过SIP协议相连。
目前,对于通过H.248/MGCP协议接入软交换***的IAD设备或AG设备下的软交换用户,无法实现振铃状态下的呼叫转接业务。
本发明之一,提供了一种在软交换通信网络中实现呼叫转接的方法,如图2所示,前提是主叫用户和第一被叫用户在通话中。
在实际应用中,大型企业往往处于不同的地理位置,多采用IPCentrex的模式,下面就以IP Centrex模式为例,就图2中的两种情况分别举例说明。如图1所示,用户A、用户B为软交换1域内的用户,用户C为软交换2域内的用户,并且用户A、用户B、用户C为同一IP Centrex群内的用户,软交换1域与软交换2域均通过SIP协议与应用服务器相连。应用服务器中存储了IP Centrex用户的以下信息:IP Centrex用户的public号码、群内号码、IP Centrex群ID、所归属软交换的IP地址、该用户的业务信息等。用户A登记了呼叫转接业务。
图3列出了第一种情况的SIP消息流程图,主要包括以下步骤:
1)用户A拍叉簧,软交换1的MGC(媒体网关控制器)发送INVITE请求至应用服务器(Call leg 1:用户A-软交换1-应用服务器),应用服务器通过分析该消息得知:用户A请求将该呼叫保持住,于是应用服务器发送INVITE请求至软交换1的MGC(Call leg 2:应用服务器-软交换1-用户B),将用户B的远端RTP属性切换为媒体服务器的RTP资源,并让媒体服务器给用户B播放音乐或通知音。
2)用户A拔打用户C的群内号码,软交换1的MGC发送INVITE请求至应用服务器(Call leg 1:用户A-软交换1-应用服务器),应用服务器通过查询数据库获知用户C的路由信息,从而发送INVITE请求至软交换2的MGC(Call leg 3:应用服务器-软交换2-用户C)。
3)用户C的话机振铃,软交换2的MGC回送180响应至应用服务器(Call leg 3:应用服务器-软交换2-用户C),在该180响应消息中带有用户C的SDP(Session Description Protocol会话描述协议)信息,应用服务器回送180响应至软交换1的MGC(Call leg 1:用户A-软交换1-应用服务器)。
4)用户A挂机,软交换1的MGC发送Refer请求至应用服务器(Call leg 1:用户A-软交换1-应用服务器),该Refer请求中From参数为用户A的public号码,To参数为用户B的群内号码,Refer-to参数为用户C的群内号码。
5)应用服务器发送UPDATE请求至软交换2的MGC(Call leg 3:应用服务器-软交换2-用户C),并在该请求中带上用户B的SDP信息,用于将用户C的远端RTP属性切换为用户B的RTP资源。
6)应用服务器发送INVITE请求至软交换1的MGC(Call leg 2:应用服务器-软交换1-用户B),并在该请求中带上用户C的SDP信息,用于将用户B的远端RTP属性切换为用户C的RTP资源。
7)应用服务器发送BYE请求至软交换1的MGC(Call leg 1:用户A-软交换1-应用服务器),用于释放用户A的资源。
8)用户C摘机,软交换2的MGC发送200响应至应用服务器(Callleg 3:应用服务器-软交换2-用户C),用户B与用户C进入通话状态。
图4列出了第二种情况的SIP消息流程图,主要包括以下步骤:
1)用户A拍叉簧,软交换1的MGC发送INVITE请求至应用服务器(Call leg 1:用户A——软交换1——应用服务器),应用服务器通过分析该消息得知:用户A请求将该呼叫保持住,于是应用服务器发送INVITE请求至软交换1的MGC(Call leg 2:应用服务器-软交换1-用户B),将用户B的远端RTP属性切换为媒体服务器的RTP资源,并让媒体服务器给用户B播放音乐或通知音。
2)用户A拨打用户C的群内号码,软交换1的MGC发送INVITE请求至应用服务器(Call leg 1:用户A-软交换1-应用服务器),应用服务器通过查询数据库获知用户C的路由信息,从而发送INVITE请求至软交换2的MGC(Call leg 3:应用服务器-软交换2-用户C)。
3)用户C的话机振铃,软交换2回送180响应至应用服务器(Call leg 3:应用服务器-软交换2-用户C),应用服务器回送180响应至软交换1的MGC(Call leg 1:用户A-软交换1-应用服务器)。
4)用户A挂机,软交换1的MGC发送Refer请求至应用服务器(Call leg 1:用户A-软交换1-应用服务器),该Refer请求中From参数为用户A的public号码,To参数为用户B的群内号码,Refer-to为用户C的群内号码。
5)应用服务器发送BYE请求至软交换1的MGC(Call leg 1:用户A-软交换1-应用服务器),用于释放用户A的资源。
6)用户C摘机,软交换2的MGC发送200响应至应用服务器(Callleg 3:应用服务器-软交换2-用户C),响应中带有用户C的SDP信息。
7)应用服务器发送INVITE请求至软交换1的MGC(Call leg 2:应用服务器-软交换1-用户B),并在该请求中带上用户C的SDP信息,用于将用户B的远端RTP属性切换为用户C的RTP资源。应用服务器发送INVITE请求至软交换2的MGC(Call leg 3:应用服务器-软交换2-用户C),并在该请求中带上用户B的SDP信息,用于将用户C的远端RTP属性切换为用户B的RTP资源。用户B与用户C进入通话状态。
本发明之二,提供了一种在软交换通信网络的软交换控制器中用于进行呼叫转接的方法,如图5所示,主要包括以下步骤:
步骤S111,当接收来自所述主叫终端的呼叫转接请求消息时,将一个呼叫保持请求消息发送给到一个应用服务器,用于请求保持所述主叫终端与第一被叫终端之间的呼叫;
步骤S112,当接收来自所述主叫终端的对一个第二被叫终端的呼叫请求消息时,将一个呼叫建立请求消息发送给应用服务器,用于请求建立所述主叫终端与第二被叫终端之间的呼叫;
步骤S113,当接收所述主叫终端的挂机消息时,将一个用于指示主叫终端在第一被叫终端与第二被叫终端之间建立呼叫转接的呼叫转接指示消息发送给应用服务器,包含第一被叫终端的号码与第二被叫终端的号码。
优选地,上述方法还包括:
步骤S114,当接收来自所述应用服务器的资源释放请求消息时,释放与所述主叫终端有关的资源。
本发明之三,提供了一种在软交换通信网络中用于进行呼叫转接的软交换控制器,如图6所示,其包括以下构件:
呼叫保持请求装置11,用于当接收来自所述主叫终端的呼叫转接指示消息时,将一个用于请求保持所述主叫终端与第一被叫终端之间呼叫的呼叫保持请求消息发送给到一个应用服务器;
呼叫建立请求装置12,用于当接收来自所述主叫终端的对一个第二被叫终端的呼叫请求消息时,将一个用于请求建立所述主叫终端与第二被叫终端之间呼叫的呼叫建立请求消息发送给应用服务器;
呼叫转接指示装置13,用于当接收到所述主叫终端的挂机消息时,将一个用于指示主叫终端在第一被叫终端与第二用户终端之间建立呼叫转接的呼叫转接指示消息发送给应用服务器。
优选地,上述软交换控制器还包括
资源释放装置14,用于当收到来自所述应用服务器的资源释放请求消息时,释放与所述主叫终端有关的资源。
本发明之四,提供了一种在软交换通信网络的应用服务器中用于进行呼叫转接的方法,如图7所示,包括以下步骤:
步骤S121,当接收来自该主叫终端所归属的软交换控制器所发送的请求保持该主叫终端与第一被叫终端之间呼叫的一个呼叫保持请求消息时,通知第一被叫终端所属的软交换控制器,以保持所述主叫终端与第一被叫终端之间的呼叫;
步骤S122,当接收来自所述软交换控制器的请求建立该主叫终端与第二被叫终端之间呼叫的一个呼叫建立请求消息,通知第二被叫终端所归属的软交换控制器,以建立所述主叫终端与第二被叫终端之间的呼叫;
步骤S123,当接收来自第二被叫终端所归属软交换控制器的同意建立呼叫的响应消息时,将所述响应消息发送给该主叫终端所属的软交换装置;
优选地,上述方法还包括步骤S124,检测所述呼叫建立响应消息中是否包括第二被叫终端的SDP信息;
如果所述呼叫建立响应消息中包括第二被叫终端的SDP信息,当接收到来自所述主叫终端所属软交换装置的指示进行第一被叫终端与第二用户终端之间的呼叫转接的呼叫转接指示消息,将执行以下步骤:
步骤S125,通知第二被叫终端所归属的软交换器,以将第二被叫终端的远端RTP属性切换为第一被叫终端的RTP资源;
步骤S126,通知第一被叫终端所归属的软交换控制器,以将第一被叫终端的远端RTP属性切换为第二被叫终端的RTP资源;
步骤S127,将资源释放消息发送给该主叫终端所归属的软交换控制器,以释放与该主叫终端有关的资源;
步骤S128,接收来自第二被叫终端所归属软交换控制器的指示第二被叫终端已经摘机的摘机消息。
如果所述呼叫建立响应消息中不包括第二被叫终端的SDP信息时,当接收到来自所述主叫终端所属软交换装置的指示进行第一被叫终端与第二用户终端之间的呼叫转接的呼叫转接指示消息,将执行以下步骤:
步骤S129,将资源释放消息发送给该主叫终端所归属的软交换控制器,以释放与该主叫终端有关的资源;
步骤S12a,接收来自第二被叫终端所归属软交换控制器的指示第二被叫终端已经摘机的摘机消息,其中,该摘机消息中包括第二被叫终端的SDP信息;
步骤S12b,通知第一被叫终端所归属的软交换控制器,以将第一被叫终端的远端RTP属性切换为第二被叫终端的RTP资源;
步骤S12c,通知第二被叫终端所归属的软交换器,以将第二被叫终端的远端RTP属性切换为第一被叫终端的RTP资源。
本发明之五,提供了一种在软交换通信网络中用于进行呼叫转接的应用服务器,其包括:
通话保持通知装置21,用于当接收来自该主叫终端所归属的软交换控制器的请求保持该主叫终端与第一被叫终端之间通话的一个呼叫保持请求消息时,通知第一被叫终端所属的软交换控制器,以保持所述主叫终端与第一被叫终端之间的通话;;
呼叫建立通知装置22,用于当接收来自所述软交换控制器的请求建立该主叫终端与第一被叫终端之间呼叫的一个呼叫建立请求消息时,通知第二被叫终端所归属的软交换控制器,以建立所述主叫终端与第二被叫终端之间的呼叫;
呼叫响应通知装置23,用于接收来自来自第二被叫终端所归属软交换控制器的同意建立呼叫的呼叫建立响应消息;并将其通知该主叫终端所属软交换控制器;
通话建立装置24,用于当接收到来自所述主叫终端所归属软交换装置的指示进行主叫终端在第一被叫终端与第二用户终端之间的呼叫转接的呼叫转接指示消息,在第一被叫终端和第二被叫终端之间建立通话。
优选地,所述应用服务器还包括:
检测装置25,用于检测所述呼叫建立响应消息中是否包括第二被叫终端的SDP信息;
其中,当所述呼叫建立响应消息中包括第二被叫终端的SDP信息时,所述通话建立装置用于执行以下操作:
-通知第二被叫终端所归属的软交换控制器,以将第二被叫终端的远端RTP属性切换为第一被叫终端的RTP资源,以及通知第一被叫终端所归属的软交换控制器,以将第一被叫终端的远端RTP属性切换为第二被叫终端的RTP资源,;
-将资源释放消息发送给该主叫终端所归属的软交换装置,以释放与该主叫终端有关的资源;
-接收来自第二被叫终端所归属软交换控制器的指示第二被叫终端已经摘机的摘机消息。
当所述呼叫建立响应消息中不包括第二被叫终端的SDP信息时,所述通话建立装置用于执行以下操作:
-将资源释放消息发送给该主叫终端所归属的软交换控制器,以释放与该主叫终端有关的资源;
-接收来自第二被叫终端所归属软交换控制器的指示第二被叫终端已经摘机的摘机消息,其中,该摘机消息中包括第二被叫终端的SDP信息;
-通知第一被叫终端所归属的软交换控制器,以将第一被叫终端的远端RTP属性切换为第二被叫终端的RTP资源,以及通知第二被叫终端所归属的软交换控制器,以将第二被叫终端的远端RTP属性切换为第一被叫终端的RTP资源。
不脱离本发明的构思和范围可以做出许多其它改变和该型。应当理解,本发明不限于特定的实施方式,本发明的范围由所附权利要求限定。