本项目(WormChat/虫聊)属于企业协同办公/统一通信(UC)行业,是一款集“即时通讯 + 视频会议 + AI 助手”于一体的桌面端协作平台。
核心业务场景包括三块:一是企业即时通讯,支持单聊群聊、文件/图片/语音消息、已读回执和本地聊天记录缓存;二是远程视频会议,基于 WebRTC 实现多人音视频通话、屏幕共享、会议录制,并配有会议密码、主持人权限、踢人拉黑等会控能力;三是AI 智能办公,集成大语言模型对话、RAG 企业知识库问答、MCP 工具调用及会议/对话摘要生成,用于提升沟通与知识管理效率。
典型客户场景为远程办公、混合办公团队,以及需要私有化部署、数据自主可控的中小型企业。
技术形态上采用 C/S 架构:后端 Spring Boot + Netty WebSocket(主从 Reactor)+ MySQL + Redis + RabbitMQ,支持多实例水平扩展;前端 Electron + Vue 3,三进程架构,可打包 Windows/macOS/Linux 客户端;AI 层兼容 OpenAI 接口(通义千问、智谱等),支持私有化部署。工作区中还包含 JMeter 压测项目,体现其对高并发长连接场景的性能保障需求。
简言之,这是一个面向 B 端通用办公市场的“类钉钉”全栈协作产品,覆盖 IM、音视频会议、AI 提效三大行业核心赛道。
WormChat(虫聊)是一款“即时通讯 + 视频会议 + AI 助手”一体化的桌面协作平台,主要功能模块如下:
1. 即时通讯(IM)模块
单聊/群聊:基于 WebSocket 长连接的实时消息收发,支持消息状态追踪(发送中/已送达/已读)
多类型消息:文字、表情、图片(自动生成缩略图)、视频(截取封面帧)、文件、语音消息
会话管理:会话列表、置顶、删除、未读数统计
本地缓存:聊天记录通过 SQLite 存储本地,支持离线查看和历史记录搜索
文件传输:大文件分片上传 + 断点续传(最大 5GB),消息渐进式投递(先展示占位→异步处理→更新 UI)
2. 视频会议模块
多人音视频通话:WebRTC P2P Mesh 拓扑,服务端仅做 SDP/ICE 信令中转
屏幕共享:桌面画面实时共享
会议管理:创建公开/密码保护会议、预约会议、邀请入会、会议列表
会控能力:主持人权限、踢出/拉黑参会者、参会者列表
会议聊天室:会议内文字群发/私发 + 文件消息
会议录制
3. AI 助手模块
智能对话:接入大语言模型(兼容 OpenAI 接口,如通义千问、智谱)
RAG 知识库:基于企业文档的检索增强问答
MCP 工具调用:Agent 执行器 + 外部工具扩展
辅助能力:对话摘要生成、情感分析
4. 社交与通讯录模块
好友搜索 → 申请 → 审批/拒绝的完整好友流程
联系人分组管理、用户资料与头像上传
5. 管理后台
用户管理、会议管理、日志管理(管理员专属界面与权限)
6. 基础支撑能力
认证与权限:Token 无状态认证、AOP 权限切面、WS 握手绑定
跨节点扩展:Redisson RTopic 消息总线实现多实例广播
系统托盘、服务器配置、消息通知等桌面端体验功能
我负责的具体任务:Netty 长连接链路:设计完整 Pipeline,SessionManager 管理用户 Channel 映射与 ChannelGroup 群组,支持心跳保活与自动重连;即时通讯:单聊/群聊实时收发,支持文字、表情、图片、文件等多类型消息,实现消息状态机(发送中/送达/已读)、会话管理与离线消息同步;文件传输:大文件分片上传 + 断点续传,临时分片管理与过期清理;图片生成缩略图、视频截取封面帧;消息渐进式投递;本地缓存:Electron 主进程内嵌 SQLite,设计会话/消息实体与 Mapper/Service 层,聊天记录本地持久化、离线可查,通过 45+ IPC 通道打通渲染进程;认证与权限:Redis 存储 Token 双向映射实现无状态认证,自定义 AOP 切面拦截登录态与管理员权限,WS 握手阶段完成 Channel-Token 绑定;好友与会议管理:好友搜索→申请→审批→双向关系的完整流程、联系人分组;会议创建、公开/密码保护、踢出拉黑等管理功能;水平扩展:基于 Redisson RTopic 发布/订阅实现跨节点消息广播,支持后端多实例部署。亮点:双服务器架构将 HTTP 业务与长连接信令解耦,可独立扩容;Redis 消息总线突破单机连接数瓶颈。难点:一是弱网下消息可靠性,通过心跳、离线缓冲与状态机解决丢包、重复与乱序;二是分片上传的断点续传与临时文件清理一致性;三是本地 SQLite 与服务端数据的双写同步策略。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论