FIT2CLOUD
微言-即时通讯插件 的图标

微言-即时通讯插件

外部
510
0

让你的 Halo 博客瞬间变身社交平台 微言是一款专为 Halo 博客系统设计的 websocket 即时通讯插件,让你的网站不再只是单向的信息输出,而是真正的互动交流社区!

访问

当前应用为外部应用,其销售、安装、更新、维护等均由应用作者负责,与本平台无关。

1.0.0-rc2
webjing 发布于
>=2.22.10

微言 v1.0.0-rc2 - 首次发布 🎉

发布日期:2026-02-03

我们非常激动地宣布**微言(PluginCommunication)**正式发布 v1.0.0 版本!这是一款专为 Halo 博客系统打造的专业级即时通讯插件,让你的网站从单向的信息展示平台,升级为充满活力的互动社区。


🌟 核心亮点

💬 完整的即时通讯体系

基于 WebSocket 技术构建的实时通讯系统,支持私聊、群聊、频道三大通讯场景,消息秒达零延迟,为用户提供流畅的沟通体验。

🏗️ 企业级架构设计

  • 采用 Spring WebFlux + Reactor 响应式编程模型
  • 支持高并发场景,性能卓越
  • 完整的 RBAC 权限体系
  • 数据本地存储,隐私安全有保障

🎨 现代化用户界面

  • Vue 3 + TypeScript 开发
  • 移动端完美适配
  • 多种消息气泡样式可选
  • 支持自定义表情包和提示音

✨ 功能特性

📱 通讯功能

私聊系统

  • ✅ 一对一实时聊天
  • ✅ 支持文本、图片、表情、卡片等多种消息类型
  • ✅ 消息已读回执
  • ✅ 引用回复功能
  • ✅ 消息撤回(可配置时间限制)
  • ✅ 聊天记录持久化存储

群组聊天

  • ✅ 创建和管理群组
  • ✅ 群公告发布
  • ✅ 群成员管理(踢出、禁言)
  • ✅ 角色权限分配(群主、管理员、成员)
  • ✅ 入群审核机制
  • ✅ 邀请好友入群
  • ✅ 群组信息编辑

频道系统

  • ✅ 公开频道创建
  • ✅ 广播式消息发布
  • ✅ 适合公告通知场景

👥 社交功能

好友管理

  • ✅ 通过用户名/ID 搜索添加好友
  • ✅ 好友申请审核
  • ✅ 好友备注和分组
  • ✅ 黑名单功能
  • ✅ 好友在线状态显示

用户联系资料

  • ✅ 用户个人资料卡片
  • ✅ 最近联系人列表
  • ✅ 聊天置顶功能
  • ✅ 免打扰模式

🔔 通知系统

实时通知

  • ✅ 未读消息提醒
  • ✅ 仪表盘小部件显示
  • ✅ 自定义消息提示音
  • ✅ 浏览器通知支持

离线邮件通知

  • ✅ 用户离线时自动发送邮件
  • ✅ 智能合并短时间内的多条消息
  • ✅ 可配置通知间隔和频率
  • ✅ 支持批量消息摘要

系统通知

  • ✅ 好友申请通知
  • ✅ 群组邀请通知
  • ✅ 系统公告推送
  • ✅ 通知中心统一管理

🛡️ 安全与管理

消息频率限制

  • ✅ 前端发送间隔控制
  • ✅ 后端滑动窗口算法限流
  • ✅ 自动禁言违规用户
  • ✅ 可配置限流策略和惩罚机制

内容审核

  • ✅ 用户举报系统
  • ✅ 管理员审核后台
  • ✅ 批量处理举报
  • ✅ 违规用户惩罚机制

用户账户管理

  • ✅ 用户状态查看
  • ✅ 账户禁言/封禁
  • ✅ 批量用户管理
  • ✅ 操作日志记录

权限管理

  • ✅ 基于 RBAC 的权限体系
  • ✅ 细粒度权限控制
  • ✅ 角色模板定义
  • ✅ 权限继承机制

📊 数据管理

聊天记录管理

  • ✅ 完整的聊天记录存储
  • ✅ 历史消息查询
  • ✅ 聊天记录导出
  • ✅ 批量删除和清理

自动归档系统

  • ✅ 定时自动归档历史消息
  • ✅ GZIP 压缩支持
  • ✅ 可配置归档策略
  • ✅ 自定义存储位置
  • ✅ 热数据/冷数据分离
  • ✅ 优化数据库性能

🎨 个性化定制

界面定制

  • ✅ 多种消息气泡样式(经典、微信、QQ)
  • ✅ 自定义表情包
  • ✅ 支持 Emoji、GIF 动图
  • ✅ 兼容多种表情包格式(Artalk、Twikoo 等)

消息提示音

  • ✅ 内置多种提示音
  • ✅ 支持上传自定义音频
  • ✅ 用户可自由选择

配置选项

  • ✅ 消息长度限制
  • ✅ 撤回时间限制
  • ✅ 聊天记录展示条数
  • ✅ 群成员展示数量

🔌 开发者友好

API 支持

  • ✅ 完整的 RESTful API
  • ✅ 基于 OpenAPI 规范
  • ✅ 自动生成 TypeScript 客户端
  • ✅ 类型安全保障

扩展机制

  • ✅ 基于 Halo Extension 机制
  • ✅ 丰富的扩展点
  • ✅ 便于二次开发
  • ✅ 插件依赖管理

📋 技术规格

系统要求

  • Halo 版本: >= 2.22.10
  • Java 版本: 21+
  • Node.js 版本: 20+
  • 依赖插件: WebjingMandateCore >= 2.1.0

技术栈

后端

  • Java 21
  • Spring Boot / Spring WebFlux
  • Project Reactor(响应式编程)
  • Gradle 构建工具

前端

  • Vue 3
  • TypeScript
  • Pinia(状态管理)
  • UnoCSS(原子化 CSS)
  • TanStack Query(数据获取)
  • Rsbuild(构建工具)

性能特性

  • ✅ 响应式非阻塞架构
  • ✅ 支持高并发场景
  • ✅ WebSocket 长连接
  • ✅ 智能连接管理和自动重连
  • ✅ 消息队列优化
  • ✅ 数据库查询优化

🚀 快速开始

安装步骤

  1. 下载插件

  2. 安装依赖

    • 确保已安装 WebjingMandateCore 插件(>= 2.1.0)
  3. 启用插件

    • 在 Halo 后台「插件」页面上传并启用
  4. 配置插件

    • 进入插件设置页面
    • 阅读并同意服务条款
    • 根据需要调整各项配置
  5. 开始使用

    • 在 Halo 控制台左侧菜单找到「微言」入口
    • 开始体验即时通讯功能

基础配置建议

必须配置

  • ✅ 同意服务条款
  • ✅ 配置 SMTP 邮件服务(用于离线通知)

推荐配置

  • 📝 调整消息频率限制参数
  • 📝 配置聊天记录归档策略
  • 📝 添加自定义表情包
  • 📝 设置消息提示音

📖 使用场景

🎯 博主与读者互动

  • 即时解答读者疑问
  • 建立忠实粉丝群体
  • 提升博客活跃度和用户粘性

👥 社区建设

  • 创建专业兴趣群组
  • 促进用户间交流
  • 构建知识分享生态

💼 客户关系管理

  • 与客户实时沟通
  • 快速响应服务需求
  • 提升客户满意度

🎨 内容共创平台

  • 作者与读者协作创作
  • 实时讨论内容方向
  • 构建共创生态

⚠️ 重要说明

浏览器音频播放限制

用户必须在页面上进行至少一次交互(点击、按键等)后,音频才能播放。这是浏览器的安全策略,无法绕过。但只要用户在 Halo 后台做过任何操作(点击菜单、切换页面等),之后的消息通知就都能播放声音了。

表情包资源声明

本插件仅提供表情包配置功能框架,不内置任何第三方图片类表情包资源。站点管理员通过本插件配置的任何表情包资源,均由站点管理员自行添加和管理,与本插件开发者无任何关联。请确保您拥有所配置表情包的合法使用权。

数据安全

  • 所有用户数据本地存储
  • 消息加密传输
  • 完整的数据备份与恢复机制
  • 符合《个人信息保护法》等法规要求

🔄 升级说明

这是首次发布版本,无需升级操作。


🐛 已知问题

  • 群组禁言后,前端仍可发送消息(消息不会保存,但会显示发送动作)

🗺️ 未来规划

我们正在积极开发以下功能,敬请期待:

v1.1.0 计划

  • 🔜 消息搜索功能
  • 🔜 聊天记录导出为 PDF
  • 🔜 语音消息支持
  • 🔜 视频通话功能
  • 🔜 消息翻译功能

v1.2.0 计划

  • 🔜 机器人接入支持
  • 🔜 消息定时发送
  • 🔜 群投票功能
  • 🔜 消息加密增强
  • 🔜 多端消息同步优化

长期规划

  • 🔜 移动端独立 App
  • 🔜 桌面端客户端
  • 🔜 AI 智能助手集成
  • 🔜 更多第三方集成

🤝 参与贡献

我们欢迎社区贡献!如果你有好的想法或发现了问题:


🙏 致谢

感谢以下项目和社区的支持:

  • Halo - 强大的开源建站工具
  • Vue.js - 渐进式 JavaScript 框架
  • Spring Framework - 企业级 Java 框架
  • 所有为本项目提供反馈和建议的用户

📞 联系我们


🎉 结语

微言 v1.0.0 是我们迈出的第一步,我们致力于为 Halo 社区提供最专业、最易用的即时通讯解决方案。

感谢你选择微言!让我们一起打造更有温度的互联网社区。

现在就升级你的 Halo,开启即时通讯新时代! 🌈