CN101873392A - 一种基于VoIP的呼叫方法、系统及装置 - Google Patents
一种基于VoIP的呼叫方法、系统及装置 Download PDFInfo
- Publication number
- CN101873392A CN101873392A CN 201010124143 CN201010124143A CN101873392A CN 101873392 A CN101873392 A CN 101873392A CN 201010124143 CN201010124143 CN 201010124143 CN 201010124143 A CN201010124143 A CN 201010124143A CN 101873392 A CN101873392 A CN 101873392A
- Authority
- CN
- China
- Prior art keywords
- calling
- equipment
- proxy server
- behalf
- media proxy
- 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.)
- Granted
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于VoIP的呼叫方法,包括:主叫设备向被叫设备发送呼叫请求消息;所述被叫设备根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达,所述被叫设备向所述语音服务器发送重定向响应消息,所述语音服务器通知所述媒体代理服务器对呼叫进行代理。本发明中,简化了拨号策略,统一了拨号习惯。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种基于VoIP的呼叫方法、系统及装置。
背景技术
随着IP(Internet Protocol,网际协议)网络的迅速普及,基于IP的语音(即VoIP)作为一种新的应用得到了快速发展,并逐步替代了传统的PBX(Private Branch exchange,专用分组交换机)、Centrex(虚拟交换机)电话等PSTN(Public Switched Telephone Network,公共交换电话网)方式的语音,成为企业内部通信网络的主流选择。
VoIP(Voice over IP,IP语音)是通过IP网络实现的语音业务,而VoIP的呼叫可以分为信令流和媒体流两种。其中,当通话开始建立时,呼叫控制信令(即信令流,例如,SIP(Session Initiation Protocol,会话发起协议)、H.323等VoIP协议)经过语音服务器(例如,IP-PBX)进行处理;当呼叫建立成功时,RTP(Real time Transport Protocol,实时传输协议)媒体流则不需要经过语音服务器进行中转,由主叫终端和被叫终端直接收发媒体流。
具体的,由于主叫终端和被叫终端之间需要直接收发媒体流,即要求主叫终端和被叫终端之间的网络是相通的,如果二者互不相通,即使呼叫建立成功,主叫终端和被叫终端之间也不能互相听到对方的声音。
在实际应用中,企业一般包括总部、分支等多个节点,各个节点的IP网络出于安全等因素考虑,并不能完全互通。例如,分支和总部之间能够互通,但各分支之间不能互通。如图1所示的组网示意图,分支A的IP话机能够通过IP网络与总部的IP话机互通,分支B的IP话机也能够通过IP网络与总部的IP话机互通,而分支A的IP话机与分支B的IP话机之间不能互通。即基于IP网络的语音应用不能完全互通,并造成分支之间无法拨打电话。
为了解决上述问题,现有技术中,通过在总部中部署媒体代理服务器(例如,基于PSTN的语音网关或基于IP的媒体服务器等),使得所有分支均能够和媒体代理服务器的网络互通,并由该媒体代理服务器来转发不能互通的分支之间的通话(包括流信令和媒体流)。
如图2所示的一种在总部中部署了媒体代理服务器的示意图,当一个分支机构用户的IP话机需要拨打另外一个分支用户的IP话机时,则需要拨打一个前缀(图2中的步骤①),表示需要跨分支拨打电话;当语音服务器接收到带有前缀的呼叫后,会自动将该呼叫请求转发到媒体代理服务器上(图2中步骤②);媒体代理服务器终结该呼叫,并向被叫发起新的呼叫(图2中步骤③和④),并形成两段呼叫(主叫到媒体代理服务器的呼叫,以及媒体代理服务器到被叫的呼叫),即媒体代理服务器来进行桥接,完成隔离网络(例如,分支A和分支B)之间的通话。
但是,在现有技术中,用户拨打电话之前,需要区分是要拨打网络内的呼叫还是跨隔离网络的呼叫(实际应用为分支内的呼叫,还是分支间的呼叫,还是分支到总部的呼叫),并以此来确定是否需要拨打前缀号码。如果用户没区分清楚或者没有拨打前缀,并直接拨了另外一个分支的电话号码,则会造成被叫电话振铃,但摘机后,没有声音的情况(由于网络隔离,媒体流无法建立),从而影响用户的使用。
发明内容
本发明提供一种基于VoIP的呼叫方法、系统及装置,以实现主叫设备和被叫设备之间的VoIP呼叫,且不影响用户的使用。
为了达到上述目的,本发明提出了一种基于IP语音VoIP的呼叫方法,应用于包括主叫设备、被叫设备、媒体代理服务器和语音服务器的系统中,所述方法包括以下步骤:
所述被叫设备接收呼叫请求消息,判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位,所述呼叫请求消息中携带了所述主叫设备的IP地址;
如果没有携带呼叫已经被代理的标志位,则所述被叫设备根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,所述被叫设备向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;所述语音服务器根据所述地址信息向所述媒体代理服务器发送由所述媒体代理服务器对所述主叫设备和所述被叫设备之间的呼叫进行代理的呼叫请求消息,所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫;
如果携带呼叫已经被代理的标志位,则所述被叫设备确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫。
根据所述IP地址进行可达性探测之后,还包括:
如果探测结果为可达时,所述被叫设备与对端设备进行协商,并向所述对端设备返回振铃响应消息,并与所述主叫设备建立呼叫。
所述被叫设备向所述语音服务器发送重定向响应消息具体包括:
所述被叫设备向所述语音服务器发送302重定向响应消息,所述302重定向响应消息中携带了所述主叫设备与所述被叫设备之间的呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位,以及所述媒体代理服务器的地址信息。
所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫,具体包括:
所述媒体代理服务器与所述被叫设备建立VoIP连接,以及与所述主叫设备建立VoIP连接,实现所述主叫设备与所述被叫设备通话。
所述媒体代理服务器与所述被叫设备建立VoIP连接,具体包括:
如果所述被叫设备接收到所述媒体代理服务器向所述被叫设备发送携带了呼叫已经被代理的标志位的呼叫请求消息时,所述被叫设备与所述媒体代理服务器进行协商,向所述媒体代理服务器返回振铃响应消息,并与所述媒体代理服务器建立VoIP连接。
一种基于VoIP的呼叫系统,包括主叫设备、被叫设备、媒体代理服务器和语音服务器,其中:
所述主叫设备,用于通过所述语音服务器向所述被叫设备发送呼叫请求消息,所述呼叫请求消息中携带了所述主叫设备的IP地址;
所述被叫设备,用于接收呼叫请求消息,判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位;如果没有携带呼叫已经被代理的标志位,则根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;如果携带呼叫已经被代理的标志位,则确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫;
所述语音服务器,用于在接收到所述重定向响应消息时,根据所述地址信息向所述媒体代理服务器发送由所述媒体代理服务器对所述主叫设备和所述被叫设备之间的呼叫进行代理的呼叫请求消息;
所述媒体代理服务器,用于代理所述被叫设备和所述被叫设备之间的呼叫。
一种基于VoIP的呼叫装置,应用于包括主叫设备、被叫设备、媒体代理服务器和语音服务器的系统中,所述装置在所述系统中作为所述主叫设备或者被叫设备,当所述装置为所述被叫设备时,所述装置包括:
接收模块,用于接收呼叫请求消息,所述呼叫请求消息中携带了所述主叫设备的IP地址;
判断模块,与所述接收模块连接,用于判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位;
处理模块,与所述判断模块连接,用于当判断结果为没有携带呼叫已经被代理的标志位,则根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,则向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;
当判断结果为携带呼叫已经被代理的标志位,则确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫。
所述处理模块还用于,当探测结果为可达时,与对端设备进行协商,并向所述对端设备返回振铃响应消息,并与所述主叫设备建立呼叫。
所述处理模块还用于,向所述语音服务器发送302重定向响应消息,所述302重定向响应消息中携带了所述主叫设备与所述被叫设备之间的呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位,以及所述媒体代理服务器的地址信息。
所述处理模块还用于,如果接收到所述媒体代理服务器向所述被叫设备发送携带了呼叫已经被代理的标志位的呼叫请求消息时,与所述媒体代理服务器进行协商,向所述媒体代理服务器返回振铃响应消息,并与所述媒体代理服务器建立VoIP连接。
与现有技术相比,本发明具有以下优点:被叫设备通过获取主叫设备的IP地址,能够根据主叫设备的IP地址进行可达性探测,在不可达时,由媒体代理服务器代理被叫设备和主叫设备的呼叫,在可达时,被叫设备和主叫设备能够直接呼叫,从而简化了拨号策略,统一了拨号习惯。
附图说明
图1为现有技术中基于VoIP的组网示意图;
图2为现有技术中在总部中部署了媒体代理服务器的示意图;
图3为本发明提出的一种基于VoIP的呼叫方法流程图;
图4为本发明应用场景下提出的一种基于VoIP的呼叫方法流程图;
图5为本发明提出的一种基于VoIP的呼叫装置结构图。
具体实施方式
本发明中,通过在主叫设备向被叫设备发送的呼叫请求消息中携带该主叫设备的IP地址,当被叫设备接收到该呼叫请求消息时,能够获取到主叫设备的IP地址,并根据该主叫设备的IP地址进行可达性探测,在探测结果为不可达时,由媒体代理服务器代理被叫设备和主叫设备的呼叫,而在探测结果为可达时,由被叫设备和主叫设备直接进行呼叫,从而简化了拨号策略,统一了拨号习惯。
本发明提出了一种基于VoIP的呼叫方法,应用于包括主叫设备、被叫设备、媒体代理服务器和语音服务器的系统中,其中,在实际应用中,主叫设备和被叫设备是相对的,例如,当设备A向设备B发起呼叫时,则设备A为主叫设备,设备B为被叫设备,而当设备B向设备A发起呼叫时,则设备B为主叫设备,设备A为被叫设备;如图3所示,该方法进一步包括以下步骤:
步骤301,被叫设备接收呼叫请求消息。
具体的,本发明中,对于被叫设备接收到的呼叫请求消息,分为两种情况考虑,分别为没有携带呼叫已经被代理的标志位的呼叫请求消息和携带呼叫已经被代理的标志位的呼叫请求消息。
第一种情况,呼叫请求消息中没有携带呼叫已经被代理的标志位;即被叫设备接收主叫设备通过语音服务器向被叫设备发送的呼叫请求消息,其中,呼叫请求消息中没有携带呼叫已经被代理的标志位。
具体的,当主叫设备发起呼叫请求时,则主叫设备需要向被叫设备发送呼叫请求消息,该呼叫请求消息中携带了主叫设备的IP地址。其中,在主叫设备发起一个呼叫时,需要在请求消息中携带主叫方媒体流所使用的IP地址,即携带该主叫设备的IP地址。进一步的,在主叫设备向被叫设备发送呼叫请求消息的过程中,该主叫设备需要首先将该呼叫请求消息发送给语音服务器,并由语音服务器将该呼叫请求消息转发给对应的被叫设备。当语音服务器接收到呼叫请求消息时,根据该呼叫请求消息进行呼叫路由,并能够获取到被叫设备的IP地址,从而根据被叫设备的IP地址将呼叫请求消息发送到被叫设备。
第二种情况,呼叫请求消息中携带呼叫已经被代理的标志位;即被叫设备接收媒体代理服务器向被叫设备发送的呼叫请求消息,其中,该呼叫请求消息中携带了呼叫已经被代理的标志位。
具体的,当语音服务器根据媒体代理服务器的地址信息通知媒体代理服务器对主叫设备和被叫设备之间的呼叫进行代理时,则被叫设备能够接收到携带了呼叫已经被代理的标志位的呼叫请求消息,需要注意的是,这种情况是在执行了后续步骤的前提下发生的,后续步骤将对该情况进行详细说明,在此不再详加赘述。
步骤302,被叫设备判断呼叫请求消息中是否携带了呼叫已经被代理的标志位;如果没有携带呼叫已经被代理的标志位,则转到步骤303,如果携带呼叫已经被代理的标志位,则转到步骤306。
步骤303,被叫设备根据呼叫请求消息获取主叫设备的IP地址,并根据该IP地址进行可达性探测。如果探测结果为不可达时,转到步骤304,如果探测结果为可达时,转到步骤306。
具体的,当接收到来自语音服务器的呼叫请求消息时,由于该呼叫请求消息中携带了该主叫设备的IP地址,即被叫设备能够根据该IP地址进行可达性探测。其中,该可达性探测的方式可以根据实际需要进行选择,例如,可以通过向该IP地址发送消息A的方式来进行可达性探测。
步骤304,被叫设备向语音服务器发送重定向响应消息,该重定向响应消息中携带了媒体代理服务器的地址信息。
当然,在实际应用中,根据实际的需要,该被叫设备还可以向主叫设备发送重定向响应消息(例如,对于没有语音服务器的系统),此时,后续的语音服务器相关的重定向操作均是由主叫设备执行的,这种情况本发明中不再详加赘述。
具体的,重定向响应消息可以为302重定向响应消息(当然,实际应用中,还可以为其他重定向响应消息,本发明中不再赘述),而在该302重定向响应消息中,除了需要携带媒体代理服务器的地址信息,还需要携带主叫设备与被叫设备之间的呼叫需要该媒体代理服务器进行代理的信息。而在实际应用中,被叫设备可以通过设置标志位的方式来表示呼叫是否已经被代理,即此时被叫设备需要设置呼叫已经被代理的标志位。
需要说明的是,媒体代理服务器地址信息的获得方式包括但不限于在被叫设备上手工配置该媒体代理服务器的地址信息,或者,在被叫设备自动获取IP地址的过程中,由DHCP(Dynamic Host Configuration Protocol,动态主机设置协议)服务器通过扩展选项的方式将该媒体代理服务器的地址信息下发给该被叫设备。
步骤305,语音服务器根据地址信息向媒体代理服务器发送由媒体代理服务器对主叫设备和被叫设备之间的呼叫进行代理的呼叫请求消息,该媒体代理服务器代理被叫设备和被叫设备之间的呼叫。
具体的,当语音服务器接收到302重定向响应消息时,能够根据该302重定向响应消息中的地址信息直接将呼叫请求消息重定向到媒体代理服务器,即语音服务器能够根据地址信息向媒体代理服务器重新发送呼叫请求消息,而呼叫请求消息中携带了呼叫已经被代理的标志位。
进一步的,当媒体代理服务器接收到该呼叫请求消息后,根据该标志位,确定主叫设备和被叫设备之间的呼叫需要自身进行代理,此时,该媒体代理服务器需要与主叫设备建立VoIP连接,并与被叫设备建立VoIP连接。在与被叫设备建立VoIP连接的过程中,该媒体代理服务器需要向被叫设备发送该呼叫请求消息,而呼叫请求消息中同样携带了呼叫已经被代理的标志位。
当被叫设备接收该呼叫请求消息(可以理解的是,此时接收到的呼叫请求消息为步骤301中第二种情况所针对的呼叫请求消息)时,即转到步骤301中进行后续的处理。此时,在步骤301中的处理过程中,被叫设备获取该标志位的信息时将发现该标志位,并确定呼叫已经被媒体代理服务器代理,进行步骤306。
步骤306,被叫设备按照正常的呼叫流程进行协商,并向对端设备返回振铃响应消息,并最终与主叫设备建立呼叫。其中,该对端设备可以为媒体代理服务器、主叫设备、语音服务器等。可以理解的是,按照正常的呼叫流程进行协商,并向对端设备返回振铃响应消息时,对端设备为媒体代理服务器,或者主叫设备,或者,语音服务器的处理过程是类似的。
具体的,在步骤302中,由于呼叫请求消息中携带呼叫已经被代理的标志位转到本步骤时,则被叫设备需要按照正常的呼叫流程进行协商,并向媒体代理服务器返回振铃响应消息,并与媒体代理服务器建立呼叫,而媒体代理服务器还需要与主叫设备建立呼叫,从而使得被叫设备能够与主叫设备建立呼叫。
而在步骤303中,由于探测结果为可达转到本步骤时,则被叫设备需要按照正常的呼叫流程进行协商,并向语音服务器或主叫设备返回振铃响应消息,并与语音服务器或主叫设备建立呼叫,从而使得被叫设备能够与主叫设备建立呼叫。
为了更加清楚的说明本发明所提出的基于VoIP的呼叫方法,以下结合一种具体的应用场景进行详细说明,其中,在该应用场景下,是针对SIP协议的,而实际应用中,其他VoIP协议(例如,H.323等)的处理过程与SIP协议的处理过程类似,本发明中不再详加赘述,以SIP协议为例详细说明本发明所提供的基于VoIP的呼叫方法。如图4所示,包括以下步骤:
步骤401,主叫设备向语音服务器发送INVITE(请求)请求消息,其中,在该INVITE请求消息中包含了扩展头域Media-Caller(媒体呼叫),而该Media-Caller用于携带该主叫方媒体(即主叫设备)所使用的IP地址。
具体的,当用户在全网使用统一的拨号方法进行拨号,如果要拨打一个被叫号码时,需要发送一个包含扩展头域Media-Caller的INVITE请求消息给语音服务器。当语音服务器接收到该INVITE请求消息后,需要向主叫设备回应100trying(正在尝试)消息。
需要说明的是,扩展头域Media-Caller语法的定义如下:
Media-Caller=″Media-Caller″″:″hostport
hostport=host[″:″port]
host=hostname/IPv4address/IPv6reference
当然,实际应用中,也可以选择其他方式来定义Media-Caller,只要Media-Caller中能够携带主叫设备所使用的IP地址即可。
步骤402,语音服务器根据该INVITE请求消息进行呼叫路由,查找到被叫设备对应的IP地址,并将INVITE请求消息发送给被叫设备。当被叫设备接收到该INVITE请求消息后,需要向语音服务器回应100trying消息。
步骤403,被叫设备接收到该INVITE请求消息后,解析Media-Caller,获得主叫设备的IP地址,并使用SIP OPTIONS(选项)消息来探测该IP地址是否可达。当然,实际应用中,还可以选择其他消息(例如,消息A)来探测该IP地址是否可达。
如果该IP地址可达时,则说明主叫设备与被叫设备之间能够互通,即主叫设备和被叫设备可以直接收发媒体流,此时,按照正常的SIP协议流程,被叫设备与主叫设备建立VoIP连接,并根据VoIP连接进行主叫设备和被叫设备之间的呼叫,该过程本发明中不再赘述。
如果该IP地址不可达时,则说明主叫设备与被叫设备之间没有互通,即主叫设备和被叫设备不能直接收发媒体流,转到步骤404中进行后续处理。
步骤404,被叫设备向语音服务器回复302重定向响应消息,并在该302重定向响应消息中的Contact头域中指明媒体代理服务器的IP地址,在该302重定向响应消息中的Diversion头域中指明重定向的原因为呼叫需要媒体代理服务器进行代理。当然,并不局限于使用Contact头域和Diversion头域表示相关信息,还可以使用302重定向响应消息的其他部分携带上述信息,本发明中不再赘述。
需要说明的是,媒体代理服务器地址信息的获得方式包括但不限于在被叫设备上手工配置该媒体代理服务器的地址信息,或者,在被叫设备自动获取IP地址的过程中,由DHCP服务器通过扩展选项的方式将该媒体代理服务器的地址信息下发给该被叫设备。
步骤405,语音服务器接收到302重定向响应消息后,根据Contact头域中的地址(即媒体代理服务器的IP地址),将INVITE请求消息重定向到媒体代理服务器;并在Diversion头域中填充重定向原因为需要使用媒体代理服务器代理呼叫。当媒体代理服务器接收到该INVITE请求消息后,需要向语音服务器回应100trying消息。
需要说明的是,在Diversion头域中填充重定向原因的方式包括但不限于在已有的原因值列表中扩展一个原因码“media-proxy-required”,如下所示的一种示意情况:
Diversion:called@B;reason=media-proxy-required
步骤406,媒体代理服务器收到INVITE请求消息后,终结该呼叫,并向被叫设备重新发起新的呼叫。
重新发起新的呼叫的过程具体为媒体代理服务器向语音服务器发送INVITE请求消息,该INVITE请求消息中携带了呼叫需要媒体代理服务器进行代理的信息和媒体代理服务器的地址信息;语音服务器向媒体代理服务器回应100trying消息;语音服务器向被叫设备发送INVITE请求消息,该INVITE请求消息中携带了呼叫需要媒体代理服务器进行代理的信息和媒体代理服务器的地址信息;被叫设备向语音服务器回应100trying消息。
步骤407,被叫设备接收到INVITE请求消息后,获取Diversion头域的信息,当该Diversion头域中的reason=media-proxy-required时,表明该呼叫已经被代理,不需要进行探测,直接根据媒体代理服务器的地址信息与媒体代理服务器进行协商,以使媒体代理服务器能够对被叫设备和主叫设备之间的呼叫进行代理。
协商的过程具体为被叫设备向语音服务器发送180Ringing(振铃)消息;语音服务器向媒体代理服务器发送180Ringing消息;媒体代理服务器向语音服务器发送180Ringing消息;语音服务器向主叫设备发送180Ringing消息;被叫设备向语音服务器发送200OK消息;语音服务器向媒体代理服务器发送200OK消息;媒体代理服务器向语音服务器发送ACK(确认)消息;语音服务器向被叫设备发送ACK消息;媒体代理服务器向语音服务器发送200OK消息;语音服务器向主叫设备发送200OK消息;主叫设备向语音服务器发送ACK消息;语音服务器向媒体代理服务器发送ACK消息。
步骤408,主叫设备与媒体代理服务器建立呼叫,被叫设备与媒体代理服务器建立呼叫,并实现主叫设备和被叫设备的通话。
其中,本发明中各个步骤的顺利可以根据实际的需要进行调整。
本发明还提出了一种基于VoIP的呼叫系统,包括主叫设备、被叫设备、媒体代理服务器和语音服务器,其中:
所述主叫设备,用于通过所述语音服务器向所述被叫设备发送呼叫请求消息,所述呼叫请求消息中携带了所述主叫设备的IP地址;
所述被叫设备,用于接收呼叫请求消息,判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位;如果没有携带呼叫已经被代理的标志位,则根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;如果携带呼叫已经被代理的标志位,则确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫;
所述语音服务器,用于在接收到所述重定向响应消息时,根据所述地址信息向所述媒体代理服务器发送由所述媒体代理服务器对所述主叫设备和所述被叫设备之间的呼叫进行代理的呼叫请求消息;
所述媒体代理服务器,用于代理所述被叫设备和所述被叫设备之间的呼叫。
如图5所示,本发明还提出了一种基于VoIP的呼叫装置,应用于包括主叫设备、被叫设备、媒体代理服务器和语音服务器的系统中,所述装置在所述系统中作为所述主叫设备或者被叫设备,当所述装置为所述被叫设备时,所述装置包括:
接收模块51,用于接收呼叫请求消息,所述呼叫请求消息中携带了所述主叫设备的IP地址。
判断模块52,与所述接收模块51连接,用于判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位。
处理模块53,与所述判断模块52连接,用于当判断结果为没有携带呼叫已经被代理的标志位,则根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,则向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;
当判断结果为携带呼叫已经被代理的标志位,则确定所述主叫设备和所述被叫设备之间的呼叫需要由所述媒体代理服务器进行代理,并与所述媒体代理服务器建立VoIP连接。
所述处理模块53还用于,当探测结果为可达时,与对端设备进行协商,并向所述对端设备返回振铃响应消息,并与所述主叫设备建立呼叫。
所述处理模块53还用于,向所述语音服务器发送302重定向响应消息,所述302重定向响应消息中携带了所述主叫设备与所述被叫设备之间的呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位,以及所述媒体代理服务器的地址信息。
所述处理模块53还用于,如果接收到所述媒体代理服务器向所述被叫设备发送携带了呼叫已经被代理的标志位的呼叫请求消息时,与所述媒体代理服务器进行协商,向所述媒体代理服务器返回振铃响应消息,并与所述媒体代理服务器建立VoIP连接。
其中,本发明装置的各个模块可以集成于一体,也可以分离部署。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种基于IP语音VoIP的呼叫方法,其特征在于,应用于包括主叫设备、被叫设备、媒体代理服务器和语音服务器的系统中,所述方法包括以下步骤:
所述被叫设备接收呼叫请求消息,判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位,所述呼叫请求消息中携带了所述主叫设备的IP地址;
如果没有携带呼叫已经被代理的标志位,则所述被叫设备根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,所述被叫设备向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;所述语音服务器根据所述地址信息向所述媒体代理服务器发送由所述媒体代理服务器对所述主叫设备和所述被叫设备之间的呼叫进行代理的呼叫请求消息,所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫;
如果携带呼叫已经被代理的标志位,则所述被叫设备确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫。
2.如权利要求1所述的方法,其特征在于,根据所述IP地址进行可达性探测之后,还包括:
如果探测结果为可达时,所述被叫设备与对端设备进行协商,并向所述对端设备返回振铃响应消息,并与所述主叫设备建立呼叫。
3.如权利要求1所述的方法,其特征在于,所述被叫设备向所述语音服务器发送重定向响应消息具体包括:
所述被叫设备向所述语音服务器发送302重定向响应消息,所述302重定向响应消息中携带了所述主叫设备与所述被叫设备之间的呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位,以及所述媒体代理服务器的地址信息。
4.如权利要求1所述的方法,其特征在于,所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫,具体包括:
所述媒体代理服务器与所述被叫设备建立VoIP连接,以及与所述主叫设备建立VoIP连接,实现所述主叫设备与所述被叫设备通话。
5.如权利要求4所述的方法,其特征在于,所述媒体代理服务器与所述被叫设备建立VoIP连接,具体包括:
如果所述被叫设备接收到所述媒体代理服务器向所述被叫设备发送携带了呼叫已经被代理的标志位的呼叫请求消息时,所述被叫设备与所述媒体代理服务器进行协商,向所述媒体代理服务器返回振铃响应消息,并与所述媒体代理服务器建立VoIP连接。
6.一种基于VoIP的呼叫系统,其特征在于,包括主叫设备、被叫设备、媒体代理服务器和语音服务器,其中:
所述主叫设备,用于通过所述语音服务器向所述被叫设备发送呼叫请求消息,所述呼叫请求消息中携带了所述主叫设备的IP地址;
所述被叫设备,用于接收呼叫请求消息,判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位;如果没有携带呼叫已经被代理的标志位,则根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;如果携带呼叫已经被代理的标志位,则确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫;
所述语音服务器,用于在接收到所述重定向响应消息时,根据所述地址信息向所述媒体代理服务器发送由所述媒体代理服务器对所述主叫设备和所述被叫设备之间的呼叫进行代理的呼叫请求消息;
所述媒体代理服务器,用于代理所述被叫设备和所述被叫设备之间的呼叫。
7.一种基于VoIP的呼叫装置,其特征在于,应用于包括主叫设备、被叫设备、媒体代理服务器和语音服务器的系统中,所述装置在所述系统中作为所述主叫设备或者被叫设备,当所述装置为所述被叫设备时,所述装置包括:
接收模块,用于接收呼叫请求消息,所述呼叫请求消息中携带了所述主叫设备的IP地址;
判断模块,与所述接收模块连接,用于判断所述呼叫请求消息中是否携带了呼叫已经被代理的标志位;
处理模块,与所述判断模块连接,用于当判断结果为没有携带呼叫已经被代理的标志位,则根据所述呼叫请求消息获取所述主叫设备的IP地址,并根据所述IP地址进行可达性探测;如果探测结果为不可达时,则向所述语音服务器发送重定向响应消息,所述重定向响应消息中携带了所述媒体代理服务器的地址信息且携带呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位;
当判断结果为携带呼叫已经被代理的标志位,则确定由所述媒体代理服务器代理所述被叫设备和所述被叫设备之间的呼叫。
8.如权利要求7所述的装置,其特征在于,
所述处理模块还用于,当探测结果为可达时,与对端设备进行协商,并向所述对端设备返回振铃响应消息,并与所述主叫设备建立呼叫。
9.如权利要求7所述的装置,其特征在于,
所述处理模块还用于,向所述语音服务器发送302重定向响应消息,所述302重定向响应消息中携带了所述主叫设备与所述被叫设备之间的呼叫需要所述媒体代理服务器进行代理的所述呼叫已经被代理的标志位,以及所述媒体代理服务器的地址信息。
10.如权利要求7所述的装置,其特征在于,
所述处理模块还用于,如果接收到所述媒体代理服务器向所述被叫设备发送携带了呼叫已经被代理的标志位的呼叫请求消息时,与所述媒体代理服务器进行协商,向所述媒体代理服务器返回振铃响应消息,并与所述媒体代理服务器建立VoIP连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101241435A CN101873392B (zh) | 2010-03-15 | 2010-03-15 | 一种基于VoIP的呼叫方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010101241435A CN101873392B (zh) | 2010-03-15 | 2010-03-15 | 一种基于VoIP的呼叫方法、系统及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101873392A true CN101873392A (zh) | 2010-10-27 |
CN101873392B CN101873392B (zh) | 2012-07-11 |
Family
ID=42998044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010101241435A Expired - Fee Related CN101873392B (zh) | 2010-03-15 | 2010-03-15 | 一种基于VoIP的呼叫方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101873392B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188300A (zh) * | 2011-12-29 | 2013-07-03 | 华为技术有限公司 | 云计算环境中实现voip通话的方法、装置和系统 |
WO2016106561A1 (zh) * | 2014-12-30 | 2016-07-07 | 华为技术有限公司 | 消息上报装置及方法,数据发送装置及方法 |
CN106101087A (zh) * | 2016-06-02 | 2016-11-09 | 福建星网智慧科技股份有限公司 | 一种基于linux内核实现media proxy的方法 |
CN108112029A (zh) * | 2017-12-21 | 2018-06-01 | 维沃移动通信有限公司 | 一种寻呼处理方法及移动终端 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1014660A2 (de) * | 1998-12-21 | 2000-06-28 | Siemens Aktiengesellschaft | Verfahren zum Realisieren einer Sammelanschlussfunktion in einem Kommunikationsnetz nach ITU-T H.323 |
CN1630267A (zh) * | 2003-12-17 | 2005-06-22 | 三星电子株式会社 | 提供VoIP业务的装置和方法 |
CN1770806A (zh) * | 2004-09-22 | 2006-05-10 | 阿尔卡特公司 | 基于FTTx平台用于POTS仿真业务的故障隔离构造 |
WO2009014974A1 (en) * | 2007-07-20 | 2009-01-29 | Cisco Technology, Inc. | Using pstn reachability to verify voip call routing information |
CN101568049A (zh) * | 2009-06-01 | 2009-10-28 | 烽火通信科技股份有限公司 | 实现语音互通的epon系统、局端设备及方法 |
-
2010
- 2010-03-15 CN CN2010101241435A patent/CN101873392B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1014660A2 (de) * | 1998-12-21 | 2000-06-28 | Siemens Aktiengesellschaft | Verfahren zum Realisieren einer Sammelanschlussfunktion in einem Kommunikationsnetz nach ITU-T H.323 |
CN1630267A (zh) * | 2003-12-17 | 2005-06-22 | 三星电子株式会社 | 提供VoIP业务的装置和方法 |
CN1770806A (zh) * | 2004-09-22 | 2006-05-10 | 阿尔卡特公司 | 基于FTTx平台用于POTS仿真业务的故障隔离构造 |
WO2009014974A1 (en) * | 2007-07-20 | 2009-01-29 | Cisco Technology, Inc. | Using pstn reachability to verify voip call routing information |
CN101568049A (zh) * | 2009-06-01 | 2009-10-28 | 烽火通信科技股份有限公司 | 实现语音互通的epon系统、局端设备及方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103188300A (zh) * | 2011-12-29 | 2013-07-03 | 华为技术有限公司 | 云计算环境中实现voip通话的方法、装置和系统 |
CN103188300B (zh) * | 2011-12-29 | 2016-03-02 | 华为技术有限公司 | 云计算环境中实现voip通话的方法、装置和系统 |
US9602553B2 (en) | 2011-12-29 | 2017-03-21 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for implementing VOIP call in cloud computing environment |
WO2016106561A1 (zh) * | 2014-12-30 | 2016-07-07 | 华为技术有限公司 | 消息上报装置及方法,数据发送装置及方法 |
CN106101087A (zh) * | 2016-06-02 | 2016-11-09 | 福建星网智慧科技股份有限公司 | 一种基于linux内核实现media proxy的方法 |
CN106101087B (zh) * | 2016-06-02 | 2019-06-21 | 福建星网智慧科技股份有限公司 | 一种基于linux内核实现media proxy的方法 |
CN108112029A (zh) * | 2017-12-21 | 2018-06-01 | 维沃移动通信有限公司 | 一种寻呼处理方法及移动终端 |
Also Published As
Publication number | Publication date |
---|---|
CN101873392B (zh) | 2012-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2528616C1 (ru) | Шлюз сетевого обобщения и соответствующий способ обобщения оконечной точки | |
KR100453350B1 (ko) | 차세대 개방형 네트워크에서 비아이씨씨 프로토콜을이용한 라우팅 장치 및 방법 | |
US8885638B2 (en) | Method and apparatus for enabling peer-to-peer communication between endpoints on a per call basis | |
EP1589739B1 (en) | IP telephone system, IP telephone apparatus and calling method | |
EP1949649B1 (en) | Using pstn to communicate ip addresses for point-to-point text, voice, video, or data communication | |
US7983660B2 (en) | Mobile telephone device identifying whether incoming wireless call anchored by an enhanced services server | |
JP2007318343A (ja) | ゲートウェイ装置及び再ネゴシエーション方法 | |
US9603115B2 (en) | Method and apparatus for cellular roaming charge bypass call completion | |
US7050565B2 (en) | Multimedia augmented call coverage | |
CN101873392B (zh) | 一种基于VoIP的呼叫方法、系统及装置 | |
US8594128B2 (en) | Method and apparatus for enabling dynamic protocol interworking resolution with diverse endpoints | |
US7366183B1 (en) | Detecting multimedia capability of a caller | |
US20070288600A1 (en) | Telecommunications system and method of initiating file transfers from voice endpoints | |
JP2006087016A (ja) | 通信端末、通信システム及び通信方法 | |
CN102158613B (zh) | 呼叫转移的方法和设备 | |
JP2005012380A (ja) | マルチメディアデータ転送システム、呼接続制御装置及びそれらに用いる端末連携方法並びにそのプログラム | |
CN101232649B (zh) | 实现同组代答业务的方法、应用服务器和通信系统 | |
JP2004186748A (ja) | Ipネットワークにおける音声データ送受信自動選択システム及び方法並びにip端末 | |
JP2012105109A (ja) | 通信システム及びサーバ | |
KR101814846B1 (ko) | 통화중 호 전환 방법 및 그를 위한 통신시스템 | |
US20100260171A1 (en) | Method and apparatus for processing number portability in internet phone | |
CN1997048A (zh) | 终端在ip网络中通信的方法及重定向装置 | |
KR100898611B1 (ko) | 브이오아이피 인터넷 통화 발신자의 위치추적방법 | |
EP4113930A1 (en) | Method and communication system for transmitting signaling information used for establishing a communication session between a calling end device and a called end device | |
JP2006203324A (ja) | ゲートウェイシステム |
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 | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120711 Termination date: 20200315 |
|
CF01 | Termination of patent right due to non-payment of annual fee |