盒子IM 是一个开源的网页版聊天软件,旨在提供类似微信的即时通讯功能,支持跨平台的沟通和协作,适合个人和团队日常交流。该项目采用 MIT 许可证,用户可自由使用与修改代码,但请遵守相关协议。

技术架构

  • 后端:基于 Spring Boot 和 Netty,Spring Boot 处理业务逻辑和 RESTful API,Netty 作为高性能网络框架负责底层通信。
  • 前端:网页版使用 Vue.js 开发,移动端则采用 uniapp 框架,支持 iOS、Android 和 H5。
  • 数据库:MySQL 用于存储用户信息、消息记录等。
  • 缓存:Redis 实现消息推送和缓存,提升响应速度和系统性能。

项目结构

核心功能

  • 私聊与群聊:支持点对点私聊和群组多方聊天。
  • 离线消息:用户离线期间的消息在上线后自动推送,确保信息不遗漏。
  • 多媒体消息:支持图片、文件、语音及丰富的表情发送。
  • 音视频通话:单人或多人音视频功能,基于 WebRTC 技术,确保通信安全(需 SSL 证书)。
  • 已读未读状态:实时显示消息的已读未读状态,优化用户体验。
  • 群聊@功能:在群聊中可 @ 指定成员,便于重要消息传递。

消息推送架构

界面截图

以下为盒子IM的实际操作界面:

  

项目地址

该项目已在 Gitee 上开源,欢迎开发者参与贡献与改进:

https://gitee.com/bluexsx/box-im

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。