码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【新知实验室 TRTC&IM】实时互动课堂最佳实践


    【新知实验室 TRTC&IM】实时互动课堂最佳实践

    • 一、新知实验室-TRTC腾讯云音视频产品体验官计划
      • 活动简介
    • 二、产品简介
      • TRTC
      • IM
    • 三、最佳实践
      • 3.1 官方快速上手TRTC(快速跑通)
        • 3.1.1 注册腾讯云账号
        • 3.1.2 使用实时音视频(需先开通)
        • 3.1.3 创建应用
        • 3.1.4 查看项目(查看密钥和快速上手操作)
        • 3.1.5 运行快速上手项目(静态页面)
      • 3.2 使用TRTC&IM构建实时互动课堂
        • 3.2.1 项目简介(trtc-education-electron)
        • 3.2.2 设置即时通讯IM的 Web 端可同时在线个数
        • 3.2.3 构建项目(使用云服务器)
          • 3.2.3.1 构建环境
          • 3.2.3.2 克隆代码
          • 3.2.3.3 设置AppID和SK(记得保存)
          • 3.2.3.4 ==修改官方留的Bug==
          • 3.2.3.5 安装依赖
          • 3.2.3.6 测试&打包
        • 3.2.4 在线课堂运行
    • 四、总结

    一、新知实验室-TRTC腾讯云音视频产品体验官计划

    活动简介

    活动链接:https://marketing.csdn.net/p/637c852aedd21c0ef20754a7d7635e6d
    活动链接:https://marketing.csdn.net/p/637c852aedd21c0ef20754a7d7635e6d
    活动链接:https://marketing.csdn.net/p/637c852aedd21c0ef20754a7d7635e6d

    在线上线下一体化、虚拟现实加速融合的趋势下,音视频已经演进成一种基本能力,深刻变革了社会的交互方式。未来,音视频作为全真互联时代的重要基石,将持续推动互联网和实体产业的数字化创新与升级。
    腾讯云实时音视频TRTC基于腾讯20多年在音视频技术上的深度积累,主打低延时互动直播和多人音视频两大解决方案,致力于帮助全球开发者快速搭建低成本、低延时、高品质的音视频互动解决方案。
    在这里插入图片描述



    二、产品简介

    TRTC

    TRTC全称(Tencent Real-Time Communication)即腾讯实时音视频服务,定位是解决实时通信的云服务,主要功能是基于互联网的,接收、处理、转发和保存大流量的音视频流数据,主要用于直播、视频会议等场景;围绕直播提供了一些简单IM功能;提供demo和易用的SDK,方便不同终端快速接入;允许用户自定义采集和渲染数据源。

    IM

    即时通信(Instant Messaging,IM)基于 QQ 底层 IM 能力开发,仅需植入 SDK 即可轻松集成聊天、会话、群组、资料管理能力,帮助您实现文字、图片、短语音、短视频等富媒体消息收发,全面满足通信需要。



    三、最佳实践

    3.1 官方快速上手TRTC(快速跑通)

    腾讯云音视频官方提供了一个快速上手案例,这里呢,我们使用Web项目来为大家演示一下(我在前端方面也是个小白)

    3.1.1 注册腾讯云账号

    首先注册腾讯云的账号,新用户有好礼相赠!
    注册链接:腾讯云
    注册链接:腾讯云
    注册链接:腾讯云

    3.1.2 使用实时音视频(需先开通)

    在这里插入图片描述

    3.1.3 创建应用

    在这里插入图片描述

    在这里插入图片描述

    3.1.4 查看项目(查看密钥和快速上手操作)

    在这里插入图片描述
    在这里插入图片描述

    3.1.5 运行快速上手项目(静态页面)

    在这里插入图片描述
    在文件夹中打开Index.html文件
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    至此,您已成功跑通TRTC的Web快速上手项目, 同时您也可以设置好参数,将其托管到OSS存储桶中,进行测试







    3.2 使用TRTC&IM构建实时互动课堂

    因为疫情原因,全国的大部分老师和学生都在进行网课学习,同时在前段时间(2022年11月9日),又出现了网课入侵这种非常恶劣的事件,那么在这里,将为大家演示如何使用TRTC&IM为老师和同学构建一个线上实时互动课堂,项目由 腾讯即时通信IM团队提供

    3.2.1 项目简介(trtc-education-electron)

    TRTC 实时互动课堂是一款开源的在线课堂软件,支持一名教师给多名学生在线上课,一个课堂最多同时支持 300 人在线实时互动。如果开启旁路直播、CDN推流服务,可支持上万人在线观看。本软件基于腾讯云实时音视频通信(Tencent Real-Time Communication, TRTC)、腾讯云即时通信(Tencent Instant Message, TIM)、Electron、React 和 Webpack 等构建。

    官方项目地址:https://github.com/TencentCloud/trtc-education-electron

    GitCode项目地址(已修复TIMService.ts)Bug:https://gitcode.net/fly1574/trtc-education-electron-fixed



    3.2.2 设置即时通讯IM的 Web 端可同时在线个数

    IM控制台:https://console.cloud.tencent.com/im
    在这里插入图片描述
    在这里插入图片描述


    3.2.3 构建项目(使用云服务器)

    这里使用的是一台云服务器(没有摄像头、麦克风),读者们也可以根据自己的情况使用本地的win电脑直接开发

    3.2.3.1 构建环境
    软件版本
    NodeJSv16.13.1
    git2.25.1
    yarn1.22.15
    vscode1.73.1

    3.2.3.2 克隆代码
    git clone https://github.com/TencentCloud/trtc-education-electron.git
    
    
    • 1
    • 2

    在这里插入图片描述


    3.2.3.3 设置AppID和SK(记得保存)
    修改项目中的配置文件
    src/main/config/generateUserSig.js
    
    • 1
    • 2

    在这里插入图片描述

    3.2.3.4 修改官方留的Bug

    在运行这个demo的时候,还是出了一点bug的,到现在发现俩,也和腾讯的在线支持反馈了,他们说会更新,代码,但是博文发出时,github上的代码bug仍旧是没有修复,所以需要手动添加 .toString()

    # 修改文件 
    # trtc-education-electron\src\renderer\core\room-core\TIMService.ts
    修改该文件的186、238行左右,如下
    
    $ 修改前
        this.groupID = groupID;
        const realGroupID = groupID;
    $ 修改后
        this.groupID = groupID.toString();
        const realGroupID = groupID.toString();
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述
    在这里插入图片描述

    3.2.3.5 安装依赖
    $ cd trtc-education-electron/
    # 安装yarn
    $ corepack enable
    # 查看yarn版本
    $ yarn --version
    # 指定 npm 国内镜像
    $ npm config set registry=https://registry.npm.taobao.org/
    # 指定 Electron 的国内镜像地址
    $ npm config set ELECTRON_MIRROR=https://npm.taobao.org/mirrors/electron/ 
    # 安装依赖
    $ yarn
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述

    3.2.3.6 测试&打包

    因为该云服务器没有摄像头和麦克风,这里的测试会失败,直接进行打包,然后将生成的.exe文件直接在本地电脑安装进行测试

    # 如果需要先测试
    $ yarn start
    
    # 直接打包
    $ yarn package
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    3.2.4 在线课堂运行

    必须先开启程序所运行主机的摄像头和麦克风权限

    教师创建课堂
    在这里插入图片描述

    在这里插入图片描述

    学生安装程序后,加入课堂
    在这里插入图片描述



    四、总结

    作为一个从来没有使用过TRTC的新人,快速跑通官方的演示案例还是很轻松的;在后面的那个TRTC&IM项目trtc-education-electron实时在线课堂,还是挺简单的,不过还是很意外的帮助官方发现了俩小bug。


    整体看来上手TRTC还是很快,而且拓展性很强,还有一点就是腾讯云音视频的在线技术支持团队,的确反应很快速!好的产品离不开好的技术支持!

  • 相关阅读:
    MongoDB操作、非关系型数据库存储
    BUUCTF逆向wp [MRCTF2020]Transform
    Spring MVC的转发与重定向
    2023-10-07 LeetCode每日一题(股票价格跨度)
    Python:暴力破解密码 - 压缩包、web实战
    tRNA甲基化偶联3-甲基胞嘧啶(m3C)|tRNA-m3C (3-methylcy- tidine)
    view_source (攻防世界)(简单查看php源代码)
    使用 MySQL 进行分页
    ROS从入门到精通3-3:Solidworks三维建模并导入Rviz、Gazebo图文教程
    stm32之freeRTOS驱动小车
  • 原文地址:https://blog.csdn.net/fly1574/article/details/127987608
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号