65.9K
CodeProject 正在变化。 阅读更多。
Home

管理 RTMP 流软件与内容源(如 IP PBX 或在线会议服务)之间集成服务器的有用代码和示例

starIconstarIconstarIconstarIconstarIcon

5.00/5 (4投票s)

2016年2月12日

CPOL

22分钟阅读

viewsIcon

26793

downloadIcon

124

我们已经设定了一个目标,以确定在我们选择的解决方案(软件和服务组合)中,哪种解决方案能够以最小的努力扩展活动的受众。

引言

企业教育网络研讨会、会议或聚会的举行通常使用现有的基于SIP的服务和解决方案。然而,这些服务通常缺乏广泛的互联网广播能力。现有的服务,如Zoom.us、InterCall、Twilio、Vidyo、iMeet等,以及其他供应商的各种硬件和软件解决方案和产品,都无法将SIP会议转换为通过互联网进行广泛广播。

下面我们将回顾两种流视频服务器(即Adobe Media Server和Wowza Streaming Engine)、Twilio、Zoom.us、Vidyo、Lifesize、Blue Jeans、iMeet服务、CounterPath Bria 4软电话以及Flashphoner Web Call Server 4平台在不同组合下的集成方式。

Internet meeting general diagram

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

我们的原始代码示例可以展示一种简单的方法,帮助您管理一种已知的集成软件——Web Call Server。如果您需要将此代码嵌入到您的应用程序中,拥有具有经过验证功能的实用代码是关键。

下面我们将回顾两种流视频服务器(即Adobe Media Server和Wowza Streaming Engine)、Twilio、Zoom.us、Vidyo、Lifesize、Blue Jeans、iMeet服务、CounterPath Bria 4软电话以及Flashphoner Web Call Server 4平台在不同组合下的集成方式。

使用代码

在本文末尾,您将能够下载包含有用代码的整个HTML文件,但在此之前,先对我们的代码能做什么进行一些关键解释。

以下两个函数可以收集进一步REST查询所需的所有数据,特别是URL(Web Call Server的URL)和数据(服务器的命令参数)。

function sendREST(url, data) {

            console.info("url: " + url);

            console.info("data: " + data);

            $.ajax({

                url: url,

                type: 'POST',

                contentType: 'application/json',

                data: data,

                success: function () {

                    alert('REST request has been sent. Please check Developer Tools > Console output.');

                    console.info("REST successfully done");

                }

            });

        }

上述函数在成功时将返回“REST successfully done”。

下一个关键函数可帮助您在Web Call Server和任何内容源(如在线会议服务、软电话等)之间建立呼叫,并带有强制参数(通常由内容源提供)。

//Star a new call based on call details and connection details in the RESTCallForm and ConnectionDetailsForm

        function startCall() {

            var url = document.getElementById("resturl").value + "/call";

            var connectionDetailsFormObject = $('#ConnectionDetailsForm').serializeObject();

            var RESTCallFormObject = $('#RESTCallForm').serializeObject();

            RESTCallFormObject.connection = connectionDetailsFormObject;

            var data = JSON.stringify(RESTCallFormObject);

            sendREST(url, data);

        }

请注意,URL末尾不应有./call部分,因为该部分将由函数自动添加。

因此,为了本文后续简单明了的解释,我们将展示如何在几个示例中以“手动”模式使用上述代码与不同的服务和案例,但您可以将此代码嵌入到您的应用程序中并以自动模式使用。

测试条件

当我们决定测试各种服务和软件的相互兼容性和广泛的互联网广播能力时,我们根据某些标准选择了几个服务和产品。

对软件-服务集成服务器的基本要求是

  • 灵活配置以匹配各种集成服务和软件;
  • 详尽的文档;
  • 制造商的技术支持;
  • 易于管理。

选择服务的主要标准是:a)服务提供软件评估期;b)服务声明或暗示参与者通过SIP协议连接。我们排除了Zoom.us服务和Bria。我们非常了解软电话及其功能和特性,而Zoom.us是一个新的初创服务,声明了许多功能,所以我们决定无论如何都要测试它(尽管在此服务中SIP连接是付费的)。基于上述选择标准、我们使用各种集成软件的经验以及给定软件的易用性,我们决定使用Web Call Server 4进行研究。然而,也可以使用其他软件。

实验布局

下图显示了内容源(右侧)和内容接收者(左侧)之间最常见的交互方式之一

A common way of interaction between removed source and recipient

请注意,在测试使用集成平台的各种交互方式时,我们根据实验要求修改了上述图表。

实验中使用的流视频服务器

  • Wowza 流媒体引擎
  • Adobe 媒体服务器

集成平台

  • Flashphoner Web Call Server 4
  • REST 控制台 (Google Chrome)

广播源

  • CounterPath Bria 4
  • Twilio.com 服务
  • Zoom.us 服务
  • iMeet 服务
  • Vidyo 服务
  • Blue Jeans 服务
  • Lifesize 服务

查看广播(或内容)的软件

  • Flash 播放器

向服务器发送RTMP流的软件

  • Adobe Flash Media Live Encoder 3.2

实验要求是正确安装和配置上述软件产品。下面的截图显示了配置安装在本地客户端(CDN平台运行的本地网络之外)的Adobe Flash Media Live Encoder。

Adobe Flash Media Live Encoder window

我们使用Adobe Flash Media Live Encoder广播作为通过流媒体视频服务器传输音频/视频流的参考源。

生成的流(通过流媒体视频服务器后)用Flash Player进行检查(如下图所示)。

对源和接收方(播放器)的流设置(IP地址、端口、流名称)进行仔细配置至关重要。

广播测试图(或流媒体服务器操作图)如下所示

Adobe Flash Live Encoder broadcast testing diagram

Resulting broadcasting in Flash Player

在我们确认音频/视频流已到达RTMP服务器(这基本上就是我们在播放器中看到的)后,就可以开始测试了。在测试Web Call Server与Twilio服务配合之前,我们应该找出服务提供商为Web Call Server访问互联网分配的公共IP地址。

该地址应在SIP域设置中指定。对于我们用于在本地计算机上测试Twilio与Bria的公共IP地址,也必须执行相同的操作。

 

整合案例

与zoom.us的集成

对远程教育和地理分布式音视频信息实时交换的兴趣日益增长,催生了各种提供所需功能的服务。其中一个服务是zoom.us。该服务的测试图如下所示

Testing diagram for zoom.us

 

 

 

 

 

 

 

 

 

 

 

 

 

 

首先,您应该配置账户并完成虚拟教室“初始化”的步骤(参见截图)。

Virtual class initialization in zoom.us

 

初始化后,服务提供的软件启动。它从麦克风捕获声音,从摄像头捕获视频。每个会议都分配一个唯一的9位ID。通过告知此ID以及广播服务的IP地址,您可以邀请其他参与者加入会议。步骤如下图所示。

因此,如果我们拥有Zoom.us提供的IP地址和会议ID,我们就可以配置Web Call Server 4和观众来参与会议。

Zoom.us broadcasting

Dial data for zoom.us

运行和配置Web Call Server

尽管Web Call Server 4是连接各种内容源和流媒体服务器的集成工具,但每个会议(或其他源)都可以有单独的设置、具体要求和未文档化的要求,以实现标准SIP和RTMP协议。

在我们的参考案例中,两个流媒体服务器都安装在同一台设备上,所以首先我们需要确保一次只有一个服务器在工作(AMS或WSE)。否则,(如果每个服务器都在自己的设备上运行)下一步则不是必需的。

我们不得不强制其中一个流媒体服务器停止,如下图所示

[root@wowza ams]# ./amsmgr server ams stop

Server: ams command: stop

NPTL 2.12

Stopping Adobe Media Server (please check /var/log/messages)

Server has shutdown…

[root@wowza ams]# service

WowzaStreamingEngine start WowzaStreamingEngine: starting…

在这种特定情况下,AMS已停止(我们知道它在端口1936上运行),而Wowza Streaming Engine在端口1935和IP 45.101.139.105上运行。

然后,我们需要确保Web Call Server 4服务器配置与我们使用的内容源(在本例中为zoom.us)的参数匹配。为此,我们可以通过ssh询问部署Web Call Server 4的服务器,并在./conf文件夹中找到配置文件,如下图所示

Folder with the Web Call Server 4 configuration file

在文件中,我们需要调整编解码器参数和其他一些参数,如图所示。注释掉应适用于其他服务的参数。

Web Call Server 4 configuration file

所有新参数保存到配置文件后,重新启动Web Call Server 4(如下图所示)

[root@SF1 conf]# service webcallserver stop

FlashphonerWebCallServer: stopping [OK]

[root@SF1 conf]# service webcallserver start

FlashphonerWebCallServer: starting [OK]

因此,我们拥有正常运行的流媒体视频服务器和Web Call Server 4,因此我们可以开始管理Web Call Server 4和广播源。

通过Web Call Server 4初始化连接

现在,我们已经安装、配置并正确运行Web Call Server 4,我们应该考虑到该软件是内容源和流媒体服务器之间的代理。通常,中介作用是启动通过SIP呼叫内容源,接收内容源的应答,接收内容并将内容广播到流媒体服务器。

Web Call Server本身需要特定的控制。这通过REST/JSON API命令实现。这种机制可以很容易地嵌入到任何现有产品中,并提供对Web Call Server的自动控制。

在我们的案例中,我们使用REST控制台向Web Call Server发送参数化请求。请求又可能因需要集成到CDN的特定内容源而异。例如,要连接到从zoom.us服务启动的会议,应发送以下请求(这就是我们在Google Chrome的REST控制台中所做的)

{
"callId":"Xq2tlLcX89tTjaji",                          # arbitrary unique call id
"callee":"10000",                                     # callee name (random example)
"rtmpUrl":"rtmp://45.101.139.105:1935/live",          # broadcast address (CDN platform)
"rtmpStream":"lifestream1",                           # stream name
"hasAudio":"true",                                    # audio content attribute (has audio, yes/no)
"hasVideo":"true",                                    # video content attribute (has video, yes/no)
"connection":                                         # connection parameters
             {
              "sipLogin":"10000",                      # login
              "sipPassword":"10000000",                # password
              "sipAuthenticationName":"10000",         # authentication name
              "sipDomain":"162.255.36.11",             # IP address of the meeting (provided by zoom.us)
              "sipPort":"5060",                        # SIP broadcasting port
              "sipRegisterRequired":"false",           # domain registration attribute
              "appKey":"callApp"
              }
}

带有给定参数的请求被发送到Web Call Server的特殊URI,如图所示。

REST console with the address for requests

请求处理后,Web Call Server 4作为监听者之一连接到由zoom.us启动的会议。同时,Web Call Server 4接收到zoom.us内容服务的响应,并将其重定向到流媒体视频服务器。如下图所示

Broadcasting results after sending a request to zoom.us

使用Web Call Server 4管理连接

对于zoom.us,您需要通过向zoom.us发送会议的特定标识符(由服务提供)来额外连接到给定会议。在我们的案例中,ID是311 705 123。实现此目的的方法包括DTMF拨号(例如,使用软电话键盘)。Web Call Server 4也可以做到这一点,如下图所示。

REST console for a DTMF request

您也可以在REST控制台中通过以下命令发送此请求

{

"callId":"Xq2tlLcX89tTjaji",       # the same ID as in the previous request

"type":"RFC2833",

"dtmf":"1**********311705123#"     # the unique ID provided by the zoom.us service

}

                                   Note: 1********** syntax is a know-how technique specific to zoom.us

结果,给定被叫方连接到给定会议的广播,如下图所示。正如您所看到的,zoom.us界面显示了Web Call Server的徽标,它是正在运行的会议的监听者之一。

Results of connecting Web Call Server 4 to zoom.us

Broadcasting from zoom.us to Adobe Media Server or Wowza Streaming Engine

同时,在Wowza Flash Player窗口中,我们可以看到通过Web Call Server 4从zoom.us重定向到Wowza Streaming Engine服务器的广播。(见截图)。

因此,通过Web Call Server 4上的REST控制台发送两条命令,我们就能在zoom.us服务上发起会议参与,并将内容(图像和声音)重定向到Wowza Streaming Engine服务器,以便通过CDN网络进行进一步广播。

广播多个Zoom.us连接

如我们的示例所示,Web Call Server 4可以交付来自zoom.us服务的任意数量连接的广播。为此,您需要配置Bria帐户,如下图所示

Bria softphone account list

Setting up an account for Zoom.us

我们需要安装所需的音频和视频编解码器

Used audio codecs for the Zoom.us service in Bria

 Used video codecs for the Zoom.us service in Bria

然后,在您输入会议室的唯一ID后,将建立与会议的连接,并通过CDN服务器广播内容。

Dialing the meeting number provided by zoom.us

 

分析可能的集成问题

为了找出Web Call Server 4与其他软件和服务协作期间可能出现错误和故障的原因,我们建议查看Web Call Server 4安装服务器上的日志文件,如下图所示

Log file of Web Call Server

Manager log file

您可以查看通过REST控制台发送的请求结果,您可以使用Google Developer Tools,如下图所示

The list of REST console errors in Google Chrome

与Twilio集成

为了测试Web Call Server 4集成平台的灵活性,我们还进行了测试,以检查与Twilio服务的协作。实验布局如图所示

Twilio experiment diagram

配置Twilio账户和SIP域

在使用Twilio之前,我们需要在服务中配置账户并创建一个软电话将连接到的域。所需步骤如下所示

步骤1. 创建一个域,在我们的案例中是flashphoner2

Twilio account page with the flashphoner2 domain

步骤2 - 创建访问控制列表并定义域权限

Twilio account page with domain settings

步骤2.1 - 构建允许访问此域的IP地址列表。

至关重要的是,您要同时包含个人设备(软电话)的IP地址和Web Call Server 4的IP地址。

The list of IP addresses and users

The list of IP addresses

步骤2.2 - 分配权限

The list of permissions

在Twilio服务中创建域,设置权限并准备好允许的IP地址列表后,我们就可以开始配置软电话了,在我们的案例中是Bria 4。

配置Bria并将其连接到Twilio域

在Bria设置中,您应该创建一个帐户来访问Twilio,如下图所示

Configuring Bria accounts to access Twilio

Twilio account in Bria

此外,在Bria设置中,我们应该配置音频编解码器使用:G711 aLaw, uLaw,以及视频编解码器H.264。

Audio codecs for Twilio

Video codecs for Twilio

现在,我们可以使用Bria进行测试呼叫并收听Twilio的自动应答消息。如果服务上的域配置正确(并且您可以在Bria中听到自动应答),那么是时候为Web Call Server创建控制命令了。

更改Web Call Server配置以与Twilio配合使用

为了测试Twilio和Web Call Server 4的配置,我们需要更改服务器设置。更改在flashphoner.properties配置文件中进行。

The console with the opened folder where the Web Call Server config file is located.

特别是,我们更改了使用的编解码器集和许多其他参数。

Changing parameters in the Web Call Server config.

配置中需要更改的内容和方式在集成服务器制造商提供的Web Call Server 4文档中指定。

修改Web Call Server配置后,需要重启服务器才能使更改生效

[root@SF1 conf]# service webcallserver stop

FlashphonerWebCallServer: stopping [OK]

[root@SF1 conf]# service webcallserver start

FlashphonerWebCallServer: starting [OK]

管理Web Call Server 正如之前的实验一样,Web Call Server通过Google Chrome中的REST控制台发送REST命令进行管理。如下所示

{

"callId":"Xq2tlLcX89tTjaji",

"callee":"flashphoner2.sip.twilio.com",

"rtmpUrl":"rtmp://45.100.109.105:1936/live",

"rtmpStream":"lifestream1",

"hasAudio":"true",

"hasVideo":"true",

"connection":

                    {

                     "sipLogin":"flashphoner2",

                     "sipPassword":"RadK2151312",

                     "sipAuthenticationName":"flashphoner2",

                     "sipDomain":"flashphoner2.sip.twilio.com",

                     "sipPort":"5060",

                     "sipRegisterRequired":"false",

                     "appKey":"callApp"

                     }

}

请求发送到Web Call Server地址:http: //107.179.239.129:9091/RESTCall/call。

结果,发起了对Twilio服务的SIP域的呼叫,Flash Player允许收听从Twilio收到的响应。具体来说,您可以听到Twilio的自动应答消息。

因此,通过对Web Call Server 4操作的测试,当Web Call Server 4作为将Twilio与Bria连接的集成解决方案时,我们确信集成服务器可以与Twilio服务及其连接的软电话协作。

与OpenSIPS的集成

为了测试与IP-PBX解决方案的协作,我们对IP-PBX Open SIPS进行了测试。测试框架布局如下所示

OpenSIPS testing diagram

在这种情况下,Bria作为“服务”工作,接受来自第三方的呼叫并以内容响应。由于Bria角色的改变,我们需要更改设置,如下图所示。特别是,我们需要为呼叫IP-PBX OpenSIPS创建一个帐户。

Configuring Bria for calls via OpenSIPS

就像之前所有情况一样,为了查看是否能够控制Web Call Server,我们发送了一个请求

{

"callId":"Xq2tlLcX89tTjaji",

"callee":"10050",

"rtmpUrl":"rtmp://45.101.139.105:1935/live",

"rtmpStream":"lifestream1",

"hasAudio":"true", "hasVideo":"true",

"connection":

                     {

                      "sipLogin":"10051",

                      "sipPassword":"15001",

                      "sipAuthenticationName":"10051",

                      "sipDomain":"87.222.225.52",

                      "sipPort":"5080",

                      "sipRegisterRequired":"false",

                      "appKey":"callApp"

                      }

}

请注意,呼叫通过在OpenSIPS服务器上创建的帐户10051进行,“被叫方”的“号码”在同名字段中指定。

结果,通过Web Call Server 4拨打到“账户”10050的电话被重定向到流媒体服务器,并通过Flash Player播放。

与Vidyo的集成

我们测试的另一项服务是Vidyo.com。进行广泛广播的需求是由于该服务对每个广播(会议)可以拥有的最大参与者数量的限制造成的。因此,要使用此服务运行50、100或更多参与者的会议,需要另一种解决方案。

与其他服务一样,首先,我们注册该服务。

Vidyo welcome page

Vidyo sign up page

然后,注册后,我们需要将软件安装到本地计算机上,并输入您在激活帐户后收到的数据以连接到服务。

Vidyo page with the account already set up

Vidyo software interface

Account settings with the room number

输入数据后,服务连接并允许创建会议(房间)。截图显示每个登录并连接的用户都被分配了一个唯一的扩展号。

要将其他参与者连接到会议(房间),您需要邀请其他参与者,例如通过电子邮件。

当您点击程序窗口中相应的图标时,电子邮件客户端会创建一个草稿邮件,其中已包含您需要告知会议其他潜在参与者的数据。此类邮件的文本如下所示

让我们通过Vidyo开会吧!
- 从桌面或移动设备加入:点击 https: //join.vidyo.com/flex.html roomdirect.htmlATkey=1sQAgMIbOVihE3SFKKjl47oryI
- 从美国境内的H.323/SIP视频会议系统加入:75.98.89.60 和 1501005148 以及 PIN(如果需要)
- 从美国境外的H.323/SIP视频会议系统加入:31.186.235.56 和 1501005148 以及 PIN(如果需要)
- 从电话加入:(800) 916-5971,会议ID 1501005148,以及PIN(如果需要)
注意:会议期间观看的任何视频、音频和/或材料都可能被录制。需要帮助入门?请访问Vidyo知识中心:http://www.vidyo.com/knowledge-center/
 

为了测试从Vidyo服务获取的数据的性能,我们根据服务提供的数据在Bria软电话中创建了一个帐户。

Bria settings to test in cooperation with Vidyo

当我们创建Bria账户时,我们假设用户名和密码可以是任意的,唯一关键的是连接的IP地址和(稍后)拨打连接到会议室的号码。

请注意,只能启用专门为Vidyo服务创建的Bria帐户,以便呼叫此特定服务。

在Bria键盘上拨打号码1501005148后,拨号开始,Bria连接到虚拟会议室。

在程序窗口中,您可以看到新参与者的到来,如下图所示

Two participants are connected to the toom in Vidyo

由于我们通过Bria的测试成功了,让我们尝试测试Web Call Server 4与Vidyo服务的集成。

为此,我们创建了一个REST控制台命令,如下图所示。然后我们将请求发送到Web Call Server 4。

REST console with request to Web Call Server URI

The call to Web Call Server in the REST console

发送请求后,会议的新参与者(其ID我们在发送给Web Call Server的命令中指定)将出现在Vidyo服务的网站上。

Multiple participants connected to Vidyo

同时,在我们用于测试广播是否进行的播放器中,我们可以看到会议发起者发送到服务的图片,作为网络摄像头广播的占位符。

Test video in Flash Player received through the streaming server after Web Call Server has sent a request to Vidyo

此前,我们描述了启动流媒体视频服务器的机制,在此次测试中,我们同时使用了AMS和WSE。Web Call Server的设置与我们测试zoom.us服务时设置的相同。

与Blue Jeans集成

Blue Jeans是相对流行的网络会议服务之一。我们也决定测试与该服务的集成。

此服务提供了一种相当简单的启动会议机制。首先,您需要注册并创建一个帐户,如下所示

Blue Jeans welcome page

在此步骤之后,与之前一样,我们需要安装Blue Jeans提供的软件。

Steps to sign up to Blue Jeans

Download page of Blue Jeans software

安装Blue Jeans软件后,所有其他活动都通过它进行。

显然,要邀请某人参加会议,您应该首先开始会议。在Blue Jeans软件中,创建会议并将会议数据发送给潜在参与者。在我们的案例中:

  • IP地址(拨号IP)
  • 会议ID
  • 密码

如果第二个您想邀请的参与者也使用相同的Blue Jeans软件,该服务允许在特殊窗口(“配对代码”)中输入代码,以便您可以将您的软件与第二个参与者的软件并行使用。但是,我们在测试中没有使用此选项。相反,我们使用了服务提供的会议ID和密码。

Information to connect to the Blue Jeans service

为了获取连接到虚拟会议室所需的数据,我们决定像以前一样,测试该服务如何与Bria软电话协作。

于是,我们创建了一个Bria账户

Configuring Bria for Blue Jeans testing

请注意,我们从Blue Jeans社区获取了域数据,因为当您创建房间时,服务提供使用IP地址(如上所示)拨号或bjn.vc域名。

通过SIP连接所需的表示法是sip.bjc.vc,如下图所示社区成员的消息中描述的

A community page where we found correct SIP domain data for the Blue Jeans service

创建Bria帐户后,我们在键盘上输入了会议ID。结果是图片(在我们的案例中,这是一段之前在ManyCam中录制的视频片段)被广播到会议,而会议数据则被广播到Bria,如下图所示。

Resulting broadcast after connecting to Blue Jeans

然后,我们使用REST控制台测试了Blue Jeans与Web Call Server 4的集成。我们向Web Call Server 4地址:http://107.179.239.120:9091/RESTCall/call发送了以下请求

{

"callId":"100501Cxbsf",

"callee":"5322844144",

"rtmpUrl":"rtmp://45.101.139.105:1935/live",

"rtmpStream":"livestream1",

"hasAudio":"true",

"hasVideo":"true",

"connection":

                    {

                     "sipLogin":"100501",

                     "sipPassword":"9354",

                     "sipAuthenticationName":"100501",

                     "sipDomain":"sip.bjn.vc",

                     "sipPort":"5060",

                     "sipRegisterRequired":"false",

                     "appKey":"callApp"

                     }

}

 

请注意,我们将会议ID放入请求的被叫方字段,将我们在社区中找到的数据(sip.bjc.vc)放入sipDomain字段。

连接建立后,您可以在Blue Jeans程序窗口中看到几个新参与者已到达(其中一个是Bria,另一个是Web Call Server 4)。如下图所示。

Two participants have joined the meeting in Blue Jeans

相应地,在播放器中,我们看到了来自本地计算机的“图像”(如下图所示)。也就是说,我们看到了Blue Jeans软件在本地“看到”的内容。然后,Blue Jeans软件将此视频发送到服务,Web Call Server 4启动发送并接收来自Blue Jeans服务的响应,然后将响应重定向到流媒体视频服务器(在本例中为AMS或WSE)。

最后,Flash Player显示此视频。

Broadcasting a video from the streaming server after processing the request from Web Call Server

总的来说,除了缺乏关于SIP连接正确域的信息外,我们对Blue Jeans的总体印象是积极的,使用该服务简单且相对不费力。

与Lifesize的集成

我们检查集成的另一个服务是Lifesize。

与其他服务一样,在网站注册并安装服务器提供的软件后,您就可以开始使用Lifesize。我们就是这样做的。

在本地安装软件后,您应该像往常一样创建会议(参见下面的截图)

Meetings created in the Lifesize service

Lifesize software interface on a local computer

对于每次会议,服务都会提供第三方参与者可用于拨打电话并加入会议的联系方式(数据),如下图所示

Data to connect to the meeting including the IP address needed to connect, for example, through Bria

Additional connection data in Lifesize

Lifesize telephones to call

我们使用了Lifesize提供的数据进行拨号,惊喜地发现,除了所有竞争解决方案中都相当标准的语音助手外,每个连接阶段都伴随着视觉信息提示。

Hints in the local Lifesize software

像往常一样,Web Call Server使用提供的D数据通过REST控制台与Lifesize服务器建立了连接。

A request to the Lifesize server through Web Call Server

服务软件显示已连接参与者的窗口

Several participants in the same meeting room in Lifesize

并显示参与者数量

The number of participants

响应结果由Web Call Server广播到流媒体服务器(AMS或WSE)。

Broadcasting Lifesize response received through the streaming server

Lifesize video received through the streaming server

主观上,该服务对连接质量要求更高,但我们没有具体的证据。

与iMeet集成

iMeet服务提供了一系列解决方案,用于在互联网上举办公共活动,也适用于使用电话连接的参与者。

iMeet sign up steps

用户需要下载和安装的软件界面以其出色的视觉外观和大量附带信息(时间、天气预报等)令人印象深刻。

与之前审查的服务一样,该服务提供连接数据,但以URI的形式:http://www.imeet.com/georgeb

iMeet software interface on a local computer

Data to connect to iMeet

与其他服务类似的是邀请第三方参与者参加会议的能力(也通过电子邮件)。此外,还有一个便捷的选项,让服务拨打参与者的电话号码(服务给您拨号,而不是您拨打服务)。

使用通过电子邮件收到的邀请链接,我们能够从网络浏览器参加会议(无需安装软件)

Multiple participants in a meeting started with iMeet

Meeting participants in iMeet

然而,我们无法使用Bria软电话拨打会议,这大概可以由服务上的以下评论解释:

"虽然iMeet没有直接与SIP/SIMPLE或XMPP集成,但iMeet为每个主持人提供了一个个人在线会议室,因此您也可以简单地将您的URL(例如www.imeet.com/georgeb)放入即时消息对话中,邀请客人参加您的会议。您还可以将您的iMeet URL存储在您的Salesforce个人资料中,并允许人们直接从那里连接到您的iMeet!" (https://community.imeet.com/thread/1700)

即使提供了建议和下面的Bria配置,会议连接仍然无法建立(我们尝试将Domain参数设置为www.imeet.com/Vlad439323http://www.imeet.com/Vlad439323)。

Bria settings to work with iMeet

我们敢说SIP连接需要iMeert提供的其他软件和其他服务,例如iMeetVRC。

iMeetVRC should supposedly work with SIP telephones

我们将在未来的测试中进行测试。

结论

根据选择标准和实验条件,我们或多或少成功地(如下所述)测试了各种服务和软件产品的相互兼容性。令人惊讶的是,由于使用了第三方软件Web Call Server 4,许多服务与Wowza Streaming Engine和Adobe Media Server的集成或多或少毫不费力。

特别是,我们确认了以下功能:

  • 能够发起对Zoom.us服务的呼叫并管理呼叫;
  • 能够广播流媒体内容,包括多个Zoom.us连接;
  • Web Call Server能够呼叫Twilio和连接到此服务器的人员;
  • 能够管理通过IP-PBX连接的OpenSIPS人员的呼叫。与Vidyo的集成比zoom.us更简单,因为连接初始化和管理只需Web Call Server中的一个命令即可完成;
  • Lifesize主观上需要更高的带宽才能以适当的质量显示视频,而Blue Jeans是所有服务中最简单的,只需几个基本步骤即可将Bria和Web Call Server 4连接到会议;

所有测试均使用两台流媒体服务器进行——Wowza Streaming Engine和Adobe Media Server。

 

测试结果汇总如下表

 Adobe Media Server, Wowza Streaming Engine, Bria softphone, ZoomUS, Twilio, Vidyo, Blue Jeans, iMeet, Lifesize, OpenSIPS services with Web Call Server 4 test comparison table

当我们选择测试候选者时,我们意识到一些服务已经不再可用。其他服务不提供在线版本,需要安装服务器软件。有些服务是利基即时通讯工具,或者根本不支持SIP。

我们希望对各种服务和软件的此次测试能激励其他人参考此列表https://vsee.com/videoconference,并使用相同或不同的软件集进行自己的研究。了解此类实验的结果和结论将非常有趣。

参考文献

  1. 流量分析器 - https://www.wireshark.org
  2. Wowza Streaming Engine - https://www.wowza.com
  3. Adobe Media Server - http://www.adobe.com/products/adobe-media-server-family.html
  4. Web Call Server 4 - http://flashphoner.com
  5. www.zoom.us
  6. www.twilio.com
  7. www.lifesize.com
  8. www.bluejeans.com
  9. www.vidyo.com
  10. www.pgi.com
  11. CounterPath 软件 - http://www.counterpath.com/bria/
  12. 视频/音频处理软件 - https://manycam.com

有用文件链接

© . All rights reserved.