深圳市南山区

086-18665301040

Daily Archives : December 20, 2017

SIP系列讲座-基于SIP的电话会议技术探讨

电话会议是企业通信中必不可少的功能之一,目前市场上已经有很多非常成熟的电话会议系统或者基于云的解决方案。有的可能是传统的PSTN方式结合IP(SIP/H323)方式,有的是完全是纯SIP的的技术架构。为了结合我们的SIP系列讲座内容,我们今天专门介绍一下基于SIP的电话会议的核心要素,电话会议的创建移除,会议用户管理的流程和不同电话会议服务器部署方式的讨论。 1 互联网的发展越来越开放,越来越灵活,传统的PSTN网络已经很难适应互联网发展的要求,同时运营商的业务能力也逐渐往互联网的方向发展。特别是IMS或者SIP trunk的投入也越来越大。在电话会议的部署方面,SIP具有以下几个独特的优势,所以,使得越来越多的电话会议系统通过SIP来获得支持: SIP具有更丰富的支持能力,并且具有更多的开放性,而传统的PSTN网络无法获得这样的优势。 SIP具有更广泛的支持和更好的开放性,终端开发和网络技术人员(SDK/API/浏览器)可以轻易部署和开发需要的终端产品。 SIP终端通常可以非常灵活地进行配置和参数的调整,包括音视频支持,语音增益的调整。 不同的会议产品厂家通过一定的配置都可以互相兼容,解决了很多传统会议系统的兼容性问题。 基于SIP的电话会议可以轻松扩容,支持了更多的管理功能。 2 SIP电话会议系统可以通过很多方式方式来实现。几种实现方式在后续章节中有所描述。我们现在主要讨论的是服务器端的方式来实现电话会议系统。基于服务器端的电话会议系统具有以下几个方面的功能支持(如图所示)。 具体可实现的功能包括: Conference服务器可以运行多个Focus 电话会议室,每个Focus 具有不同的ID,并且支持多个Focus。Focus具有以下几个主要特性: Focus是一个Conference-Aware的用户代理。根据RFC4353的规定,Focus事实上是在会议中扮演着一个逻辑角色。 有唯一的SIP URL。 可以托管/运行一个独立的会议服务。 维持SIP会议代表的信令关系。 支持会议控制管理。 可以支持媒体转发支持混音功能。 可以邀请/移除会议代表。 这里读者一定要注意,在会议UA中,SIP电话会议支持两种UA: Conference-Unaware UA。简单来说,Unware UA可以支持电话会议但是基本上忽略了SIP的其他携带信息,它可以支持会议拨入和被邀请功能,Unware UA仅要求支持RFC3261。这里读者可以简单理解为非SIP功能终端。具体Unware UA的定义请参阅 RFC4579。 Conference-Aware UA。它必须支持SIP会议的isfocus 参数。另外,它必须支持RFC3261,应该支持REFER,SIP事件。Aware UA可以支持对SIP头的渲染,并且应该支持conference package。具体的关于Aware UA的定义请参阅 RFC4579 3.4 部分。从真正意义上来说,这种UA才是SIP会议UA。 3 现在我们看看如何实现创建第一个电话会议,会议主持人启动会议的流程,并且订阅会议代表状态消息。通过以下示例大家可以看到,会议发起人首先需要对Conference Factory来发起一个INVITE,然后Factory开始创建一个Focus,然后Factory 返回一个302临时信息,并且携带了一个会议的ID号码。发起人再次对Focus发起一个INVITE,Focus回复一个200 OK。确认创建了会议Focus以后,会议发起人可以对Focus发起一个订阅消息,这样可以通过订阅消息来获悉其他会议代表的参会状态。发起人创建Focus大概经过12个步骤来实现整个发起会议的流程。 UA支持了isfocus 参数,携带了Conf-ID。 4 创建Focus 会议室以后,发起人可以通过呼叫方式或者REFER的方式对第一个参加会议的代表发出邀请。这里,发起人通过REFER对参加会议的代表发出邀请,然后Focus对会议代表发出邀请,会议代表回复200 OK,Focus确认代表身份,会议代表进入到会议室。Focus通过提示消息通知会议发起人已经有代表进入了会议室。 会议发起人的REFER消息,通过Focus对代表发出会议邀请。Focus对会议代表发送到INVITE消息。 6 电话会议发起人可以使用REFER,对联系人列表发起会议邀请,Focus则会根据列表的联系方式和URL发送到会议代表地址。这里,Focus可能需要第三方应用软件来批量发送消息地址。 7 如果会议管理人员需要移除或踢出一个会议代表的话,可以通过REFER 头对Focus发送一个refer-to消息,通知Focus移除Refer-to的代表。Focus对需要被移除的代表发送一个Bye消息,会议代表被移除后,然后Focus对会议发起人发送一个NOTIFY消息。…

Read more