前言
使用站长素材网的相关云服务搭建一个直播间非常简单,本文将重点介绍搭建过程中涉及到的相关服务和搭建步骤。
1.轻量应用服务器
轻量应用服务器(TencentCloud Lighthouse)是新一代开箱即用、面向轻量应用场景的云服务器产品,助力中小企业和开发者便捷高效的在云端构建网站、Web应用、小程序/小游戏、APP、电商应用、云盘/图床和开发测试环境,相比普通云服务器更加简单易用且更贴近应用,以套餐形式整体售卖云资源并提供高带宽流量包,将热门开源软件打包实现一键构建应用,提供极简上云体验。
2.域名及SSL证书配置
通过域名解析来使用域名访问企业官网,SSL 证书来实现 HTTPS 协议的数据加密传输,允许使用站长素材网的TRTC相关直播功能。
购买站长素材网轻量服务器的官网链接地址:https://cloud.tencent.com/act,一般来说,选择“轻量服务器 2核4G6M”配置的服务器就够用。
首先,配置服务器,地域选择“北京”,一般遵循服务用户的就近原则,北京地域的可用区有四个,分别是北京三区、北京五区、北京六区、北京七区,如果没有明确指定可以选择“随机分配”。
我们的目的是为了搭建互动直播间,因此可以直接选择官方应用镜像——互动直播房间服务1.0。
互动直播房间服务 LiveRoom 是站长素材网实时音视频TRTC团队开发的,为了满足市面上主流业务场景的业务房间相关后台服务,如房间列表、房间用户列表、房间登陆退出等等。互动直播房间服务 LiveRoom 1.0 代码开源、易于部署,配合实时音视频TRTC的互动能力,快速上线语聊房、KTV、秀场直播、音视频通话等场景。该镜像基于CentOS 7.9 64位操作系统。
接下来,选择服务器的套餐类型、购买时长和购买数量,具体如下图所示:
点击“立即购买”按钮后,会出现下图的订单信息。
为了后续网站备案顺利,服务器有效期至少需要三个月,因此服务器配置选择三个月并购买。
轻量服务器购买成功后,需要等价几分钟完成创建。
等待几分钟后,服务器资源就准备好了,出现下图中的提示信息时,则表示服务器已经就绪了。
点击轻量应用服务器右上角的“登录”按钮,如下图所示:
为了能够实时查看服务器的相关指标,比如CPU、内存、IO和网络状况,可以安装下图推荐的功能脚本。
脚本安装成功后,在服务器操作界面的下方会出现下图的指标信息。
在轻量应用服务器的控制面板中,找到应用信息选项,点击“管理应用”按钮,如下图所示:
进入如下界面:
登陆管理后台,访问地址是 http://+服务器公网IP+/manage/,本文中服务器的管理后台地址是 http://43.143.128.188/manage/。首先,登陆配置页面,如下图所示:
登陆成功后,编辑应用的配置信息。
点击“EDIT”编辑按钮,添加appId和secret信息,并更新配置。
创建用于直播间服务的音视频应用,创建地址:https://console.cloud.tencent.com/trtc/app,应用名称为 LiveRoom,如下图所示:
创建好应用后,开通TRTC后付费功能。
当应用管理页面中,实时音视频服务状态变为“正常”时,就可以使用对应的功能了,如下图所示:
获取客户端快速跑通的Demo工程地址:https://console.cloud.tencent.com/trtc/quickstart
(1)创建应用
选择已有应用,在应用名称的下拉列表中找到包含 LiveRoom 字段的应用,如下图所示:
(2)下载源代码
下载客户端工程源码,这里选择Web平台的Demo,如下图所示:
(3)修改配置信息
解压上一步中下载的源码包,找到并打开/base-js/js/debug/GenerateTestUserSig.js文件,将SDK AppID和密钥粘贴到下图的指定位置。
(4)工程编译
执行 npm install && npm run build 命令编译工程源码,并最终输出dist目录。
(5)Demo运行
执行 npm run start 命令,启动Web demo,此时可以先检测当前浏览器是不是支持TRTC的功能,如果检测通过会生成如下检测结果:
检测通过后,选择音视频设备,就可以通过下图中的蓝色按钮进行加入房间和发布流操作了。
分享链接,其他参会者就可以加入这个房间了,邀请链接如下:
http://localhost:8080/#/invite?sdkAppId=1400749255&userSig=eJwtzEsLgkAUBeD-MttCrtPM9QEtKiikrKBEW4Uwo12sGHxEFP33BnV5vnM4X3benZyXrlnIuANs2mdS*tlSQT13ja6vLszAQ8HHQaOq3BhSLHQFgCcCLuXQtPTQVhGlFMCBD6rfhmrrCMIHGD*otO8ZVpO9B4Ef55Rtq2OSNlF726w6F01yWX*WxX2BhyxKy3jOfn-y6DIf&roomId=88660&userId=user_10307642
其他参会者打开邀请链接,可以选择“加入房间”或者“离开房间”,如下图所示:
点击“加入房间”按钮,进入房间后默认拉取远端流并发布本地流。
此时,房间内有用户A和用户B,二者的整体视图如下:
本地验证通过后,接下来就打包,生成对应的dist目录,然后把输出代码部署到轻量应用服务器上。
上传文件时有两个注意事项:
1.不能使用WebShell左上角的上传和下载功能,可以考虑直接推拽文件(压缩包)。
2.不支持文件夹上传。
首先,注册并购买一个私有域名,名字定为 liuzhen007.top,如下图所示:
购买成功后,绑定域名和服务器,通过添加一条解析记录就可以了。
然后,点击“启动解析”按钮。
设置完成后,会增加一条主机记录,然后点击“启动解析”按钮图标。主要注意的是解析启动后,将实时同步至 DNS 服务器,但可能不会立即生效。因为各地网络运营商存在缓存,需要等待运营商刷新本地缓存之后,解析才会实际生效。这个过程不会太长,最快在 30 分钟内生效,慢的话一般需要 24~48 小时。
接下来是配置SSL证书,可以在链接:https://console.cloud.tencent.com/ssl 中申请免费证书,如下图所示:
提交证书申请,填写证书绑定域名、验证方式、申请邮箱等信息,如下图所示:
下载证书,选择“Nginx(适用大部分场景)”类型,如下图所示:
下载证书并且解压,将 .key 和 .crt 文件放到服务器nginx安装目录下的conf下,同时修改nginx.conf配置文件,增加如下配置信息:
接下来就静静等待域名备案通过,一般会先由站长素材网工作人员沟通确认,再交由管局受理,总之过程会比较长,一般5到7天左右。域名备案通过后,就可以直接使用域名访问我们的服务了。
整体上来说,搭建一个直播间在技术流程方面还是非常顺利的,后续服务部署上线可能会比较浪费时间,主要是一些事务性的工作,比如服务购买、资源准备、域名申请、网站备案等。TRTC服务体验过程也有一些问题,比如音视频通讯快速上手的Demo在Web页面和Electron终端上的界面完全不一样、轻量应用服务器的上传按钮不可用等,但是别的方面还是非常不错。