https://blog.iamtsm.cn b1c62419aa feat: socket heartbeat
feat: video face mode
feat: change nickname
feat: update self connect css
feat: docker-compose inner env
fix: some lang error
2023-08-20 23:26:40 +08:00
2023-08-17 09:35:59 +08:00
2023-08-18 16:10:57 +08:00
2023-08-13 14:37:50 +08:00
2023-08-20 23:26:40 +08:00
doc
2023-04-24 13:05:54 +08:00
2023-08-05 01:50:49 +08:00
2023-06-02 00:16:39 +08:00
2023-06-02 00:16:39 +08:00
2023-07-16 12:40:44 +08:00
2023-08-16 20:25:51 +08:00
2023-08-15 21:47:27 +08:00

tl-rtc-file-tool tl webrtc file tools

体验地址 DockerHub EN-DOC QQ群: 624214498

目录

背景

20年毕设的题目相关整理出来的用webrt在web端传输文件支持传输超大文件。

优点

分片传输跨终端不限平台方便使用内网不限速局域网最高到过70多M/s支持私有部署支持多文件拖拽发送网页文件预览。 扩展了许多丰富的小功能,如本地屏幕录制,远程屏幕共享(无延迟),远程音视频通话(无延迟),直播(无延迟)密码房间oss云存储中继服务设置webrtc检测webrtc统计文字传输(群聊,私聊)公共聊天远程画板AI聊天框丰富的后台管理实时执行日志展示机器人告警通知等功能... 等等

部署前必看

无论是自行部署还是docker部署还是其他脚本部署都需要先行修改 tlrtcfile.env 中相应配置,再执行下面操作,且后续还需修改配置,需要重启服务

当然你也可以不修改配置使用默认的配置但是默认的配置仅限于可以在localhost测试使用其他人访问不到也使用不了。所以如果是需要部署到服务器上给局域网或者公网其他用户使用就必须按需设置好 tlrtcfile.env

自行部署

安装环境

安装node-14.21.x或14.21.x以上npm后进入项目目录运行下面命令

cd svr/

npm install

首次运行执行一次下面的命令

npm run build:pro

如果你需要自己开发/修改前端页面,用这个命令,不需要开发页面就跳过这一个

npm run build:dev

启动服务

启动以下两个服务, 选一种模式启动即可两者的区别就是https环境启动才可以使用音视频,直播,屏幕共享功能,其他功能不影响

http模式启动后访问 http://你的机器ip:9092

  • 启动api服务 和 socket服务
npm run http-api

npm run http-socket

或者使用https模式启动访问 https://你的机器ip:9092

  • 启动api服务 和 socket服务
npm run https-api

npm run https-socket

docker部署

目前支持 官方镜像自行打包镜像,使用官方镜像目前支持两种操作方式 docker脚本启动docker-compose启动

docker一键脚本启动

进入 bin/ 目录执行脚本 auto-pull-and-start-docker.sh

chmod +x ./auto-pull-and-start-docker.sh

./auto-pull-and-start-docker.sh

docker-compose启动

根据你的 Docker Compose 版本在 主目录 执行如下对应的命令

  • 对于 Docker Compose V1
docker-compose --profile=http up -d
  • 对于 Docker Compose V2
docker compose --profile=http up -d

自行打包启动镜像

进入 docker/ 目录后根据你的 Docker Compose 版本在主目录执行如下对应的命令

  • 对于 Docker Compose V1
docker-compose -f docker-compose-build-code.yml up -d
  • 对于 Docker Compose V2
docker compose -f docker-compose-build-code.yml up -d

其他形式部署

除了上面的手动安装docker官方镜像docker自己打包镜像之外还支持自动脚本托管平台一键部署等

下载项目后,可以进入 bin/ 目录,选择对应的系统脚本,直接执行即可,会自动检测安装环境,自动安装依赖,自动启动服务

ubuntu自动脚本 (比如ubuntu16)

  • 如果脚本没有执行权限,执行一下下面的命令
chmod +x ./ubuntu16/*.sh
  • 使用 http 方式则是执行这个脚本
./auto-check-install-http.sh
  • 或者使用 https 方式则是执行这个脚本
./auto-check-install-https.sh
  • 停止服务脚本 :
./auto-stop.sh

windows自动脚本

  • 使用 http 方式则是执行这个脚本
windows/auto-check-install-http.bat
  • 或者使用https方式则是执行这个脚本
windows/auto-check-install-https.bat

zeabur平台一键部署

Deploy on Zeabur

其他配置项

配置数据库 (非必须步骤)

需要自行安装mysql数据库新建一个数据库名称为 webchat,然后修改 tlrtcfile.env 中的数据库相关配置即可

企微通知 (非必须步骤)

如果需要设置一些访问通知错误告警通知可以在企业微信建立机器人后每一个机器人会有一个key修改 tlrtcfile.env 中的企业微信通知相关配置即可

OSS云存储 (非必须步骤)

目前支持对接了seafile存储后续会逐步支持阿里云腾讯云七牛云自己的服务器等存储方式。 修改 tlrtcfile.env 中的OSS存储相关配置即可

Chat-GPT (非必须步骤)

对接了openai的接口内置了一个聊天对话框 修改 tlrtcfile.env 中的openai相关配置即可

管理后台 (非必须步骤)

前提 : 需要开启数据库配置

修改 tlrtcfile.env 中的管理后台相关配置即可, 启动后,输入配置的房间号,输入密码,即可进入管理后台

配置turnserver (局域网非必须步骤,公网必须步骤)

目前有两种形式去生成使用turn服务的帐号密码一种是固定帐号密码 (优先推荐),一种是有效期帐号密码。选一种方式即可 以下以ubuntu示例

安装coturn

sudo apt-get install coturn

有效帐号密码模式配置文件 : docker/coturn/turnserver-with-secret-user.conf

  • 修改配置文件字段
`listening-device`, `listening-ip`, `external-ip`, `static-auth-secret`, `realm`
  • 启动turnserver
turnserver -c  /这个地方路径填完整/conf/turn/turnserver-with-secret-user.conf

固定帐号密码模式配置文件 : docker/coturn/turnserver-with-fixed-user.conf

  • 修改配置文件字段
`listening-device`, `listening-ip`, `external-ip`, `user`, `realm`
  • 生成用户
turnadmin -a -u 帐号 -p 密码 -r 这个地方填配置文件中的relam
  • 启动turnserver
turnserver -c  /这个地方路径填完整/docker/coturn/turnserver-with-secret-user.conf

部署好coturn后在对应的 tlrtcfile.env 配置中设置好webrtc相关信息即可

概述图

image

License

免责声明

免责声明

Description
WebRTC P2P在线网络媒体流工具(用于文件、视频、屏幕、直播、文本),具有管理和统计监控功能。
Readme MIT 33 MiB
Languages
JavaScript 68.4%
HTML 17.3%
TypeScript 4%
CSS 3.6%
Shell 3.3%
Other 3.4%