本文档将帮助您快速跑通 TUIRoomKit 研讨会场景示例项目,体验包括会前检测、创建研讨会房间、音视频推流、屏幕共享、成员管理及超大规模消息互动在内的核心功能。
标准会议与研讨会有何不同?
标准会议(Conference):适用于中小规模的多人协作场景,所有参与者均具有平等的音视频权限,支持宫格、演讲者等多种布局切换,并提供屏幕共享、成员管理等完整互动能力。
研讨会(Webinar):专为大型直播演讲设计,支持无上限观众进房观看。观众可举手申请上台成为嘉宾后参与讨论,且系统针对万人级互动场景优化了消息并发性能,满足更专业的演讲互动需求。
功能展示
研讨会开播端
支持主持人发起高清音视频推流与屏幕共享。当视频与屏幕共享同时开启时,支持对视频窗进行拖拽定位,灵活切换演讲布局。

研讨会嘉宾端
支持嘉宾开启麦克风进行实时语音讨论和分享。

研讨会观众端
支持观众无上限并发进房,以超低延迟观看实况并参与高频消息互动。支持观众通过“举手”功能向主持人申请变更为嘉宾。

前提条件
开通服务
SDKAppID:应用标识,腾讯云基于
SDKAppID 完成计费统计。SDKSecretKey:应用密钥,用于初始化配置文件的密钥信息。
注意:
研讨会场景基于底层的直播能力构建。请注意体验研讨会能力需要开通 TUILiveKit 体验版,以确保相关功能的正常运行。
环境准备
Node.js:≥ 18.19.1 (推荐使用官方 LTS 版本)。
现代浏览器:支持 WebRTC APIs 的现代浏览器。
设备:摄像头、麦克风、扬声器。
跑通步骤
步骤1:下载源码
访问 GitHub 仓库,克隆项目源码到本地。
git clone https://github.com/Tencent-RTC/TUIRoomKit.git --depth=1
步骤2:进入项目根目录
cd TUIRoomKit/Web/example/vite-vue3-ts
步骤3:安装依赖
在项目根目录下,安装项目所需的依赖包。
npm install
pnpm install
yarn
步骤4:配置应用信息
在项目目录中找到
TUIRoomKit/Web/example/vite-vue3-ts/src/config/basic-info-config.js 配置文件,并将您在腾讯云控制台获取的 SDKAppID 和 SDKSecretKey 填入对应的变量中。
禁止:
本文的 Demo 示例中通过在客户端代码中配置
SDKSecretKey 进行鉴权,但 SDKSecretKey 很容易被反编译逆向破解,一旦密钥泄露,攻击者就可以盗用您的腾讯云流量,因此该方法仅适合本地跑通 Demo 和功能调试。 在正式的生产环境中,建议在您的服务端生成 UserSig,在需要 UserSig 时由您的 App 向业务服务器发起请求获取动态 UserSig 来进行鉴权。详见 正式运行阶段如何计算 UserSig?
步骤5:启动项目
运行下列命令来启动开发服务器。
npm run dev
pnpm run dev
yarn run dev
启动成功后,浏览器将自动打开调试地址(通常为 http://localhost:5173)。输入用户 ID 并成功登录后,您将看到如下所示的会议界面:
体验研讨会房间

研讨会核心功能展示
TUIRoomKit 研讨会场景支持以下核心会议能力:
创建/加入房间:支持主持人创建研讨会房间,观众加入研讨会房间。

屏幕分享:支持主持人发起屏幕内容共享,且在开启视频的同时支持视频画面拖动。

成员管理:房间内主持人和管理员可将观众设置为嘉宾,或处理观众的举手申请,对参会者进行会议控制。

举手申请: 支持观众向主持人发送举手申请,申请成功后可变更为嘉宾身份开启音频。

聊天互动:支持超大房间高并发文字互动,满足万人在线实时交流需求。

主题换肤:支持通过 CSS 变量配置定制品牌色和 UI 风格。

下一步
恭喜您!您已经成功跑通了 TUIRoomKit 研讨会示例项目。您可以根据业务需求,参考以下集成指引将对应功能集成到您的项目中:
页面 | 文档链接 |
快速接入 |
常见问题
TUIRoomKit 在本地开发时使用正常,但部署到线上环境后无法正常采集用户的摄像头或麦克风设备?
原因分析:浏览器出于安全和隐私保护的考虑,对音视频设备(麦克风、摄像头)的采集有着严格限制。只有在安全环境下,采集操作才会被允许。安全环境协议包括:https://、localhost、file:// 等。HTTP 协议被视为不安全,浏览器会默认禁止其访问媒体设备。
解决方案:若您在本地(localhost)测试一切正常,但部署后出现采集失败,请立即检查您的网页是否部署在 HTTP 协议上。您必须使用 HTTPS 协议部署您的网页,并确保具备有效的安全证书。
相关资源:更多关于 URL 域名及协议的限制详情,请参见 URL 域名及协议限制说明。