基于node.js+Express搭建Agora Web Https服务器

                                    基于node.js+Express搭建Agora Web Https服务器

                                                             2018.2.24

0、首先,参考下文搭建起基于node.js+ExpressHttps服务器

基于Node.js Express搭建Https服务器

http://blog.csdn.net/xingyanchao/article/details/79362443

1、下载Agora_Web_SDK

https://www.agora.io/cn/download/ (视频通话+直播SDK

这里使用的是:Agora_Web_SDK_v2_1_0_FULL.zip

2、解压后,将文件拷贝到project1的不同目录下

(1)index.html宝贝到views下面,改名为index.ejs(覆盖原来的)

(2)AgoraRTCSDK-2.1.0.jsvendor下的jquery.js都拷贝到public/javascripts

(3)venddor下的bootstrap.min.css拷贝到public\stylesheets

3、修改index.ejs

主要是修改被引用文件的路径:

<link rel="stylesheet" href="/stylesheets/bootstrap.min.css">

<script src="/javascripts/AgoraRTCSDK-2.1.0.js"></script>

<script src="/javascripts/jquery.js"></script>

4、验证

访问https://localhost:3000/join后就可以打开本地音视频流了


5、工作流程分析

(1) getDevices()中调用AgoraRTC.getDevices获取设备信息

    ① 取出其中kindaudioinputvideoinput

    ② 分别添加到音视频源下拉列表中(重要的是deviceId而非label

(2) 点击join按钮后

    ① 创建客户端:client = AgoraRTC.createClient({mode: 'interop'});

    ② 初始化客户端:client.init(appId)

    ③ 初始化成功后,client加入channelclient.join(channel)

    ④ 加入channel后得到uid,创建本地流:localStream = AgoraRTC.createStream()

    ⑤ 设置本地流profilelocalStream.setVideoProfile('720p_3')

    ⑥ 初始化本地流:localStream.init()

    ⑦ 初始化本地流成功后

        1) 播放本地流:localStream.play('agora_local');

        2) 发布本地流:client.publish(localStream)

(3) 收到stream-added事件后,注册该流:client.subscribe()

    ① 收到stream-subscribed事件后,播放远程流:stream.play()

(4) 收到stream-removed事件后,停止播放流:stream.stop()

(5) 收到peer-leave事件后,如果peer有流,停止它:stream.stop()

6、在局域网测试过3方视频成功


猜你喜欢

转载自blog.csdn.net/xingyanchao/article/details/79363148