基于WebRTC的P2P聊天视频和文件传输项目

文摘   2024-11-28 09:43   安徽  

项目简介

Weblink 是一个基于 WebRTC 的开源项目,它是一个纯网页的聊天、文件传输、文件同步应用程序。这个项目不需要用户下载或安装任何软件,可以直接在浏览器中使用。Weblink 利用无服务器的 P2P 架构,支持多种后端,包括 Firebase 和 WebSocket,以实现高效的点对点连接。

功能特性

Weblink 的一些核心功能包括:

  1. 文件同步:能够获取对方缓存的文件。

  2. 断点续传:如果文件传输过程中连接中断,可以恢复传输。

  3. 文件缓存:传输的文件会被缓存到 IndexedDB 中。

  4. 文件搜索:可以搜索自己和对方缓存中的文件。

  5. 视频通话:支持视频通话功能。

  6. 剪贴板传输:可以通过 Ctrl + V 或在移动端粘贴来发送剪贴板内容。

  7. 文件夹传输:支持发送文件夹,并自动压缩为.zip格式。

  8. 压缩传输:在传输文件时可以选择压缩,文件将以区块为单位进行压缩并发送。

  9. 多通道传输:通过多个 DataChannel 实现并行数据传输,提升传输性能。

  10. 分享转发:PWA 安装后,可以通过系统分享发送文字或文件。

  11. 文字聊天:支持发送文字消息进行聊天。

Weblink 还通过端到端加密保障信令消息的隐私和安全。

搭建教程

开源地址:https://github.com/99percentpeople/weblink

源码部署

执行下面的终端命令:

git clone https://github.com/99percentpeople/weblink.git
cd weblink
pnpm install
pnpm dev

访问地址的:http://localhost:5173

如果需要docker部署,该项目包含dockerfiledocker-compose.yml可自行构建,同时需要SSL的支持此才能正常使用视频通话功能。

往期推荐

免费白嫖华为云服务器教程

2024-11-26

搭建一款开源的个人云电脑项目

2024-11-19

担忧聊天隐私不保?从零起步自建 IM 即时通讯服务

2024-09-02

开源项目:基于 Vue + Go 的 CRM 客户关系轻管理系统

2024-08-06

Call-Me:基于 WebRTC 的一对一视频通话 的开源项目

2024-10-09



欢迎大家关注我的公众号,将会为大家推荐更优质的内容!

青檬小栈
科长技术小栈,分享各种技术文章和教程集合。欢迎大家的关注!
 最新文章