Skip to content

IM-AI-Server 是一个Java的即时通讯系统,提供 iOS、Android、Web 等多端 IM SDK,支持快速集成和二次开发,并具备完整 IM 能力和 AI 智能对话功能。

License

Notifications You must be signed in to change notification settings

imchatkit/im-ai-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IM-AI

IM-AI-Server 是一个开源的企业级即时通讯系统,采用分布式微服务架构设计,提供高性能、高可用的即时通讯解决方案。 支持SDK快速集成到已有系统中,并提供完整的 IM 即时通讯能力。

IM集成流程

🚀 特性

  • 快速集成:提供多端 SDK,5分钟即可完成接入
  • 功能完整:支持单聊、群聊、聊天室等核心功能
  • 易扩展:基于 Java 技术栈,无缝对接 Spring Cloud 生态
  • AI 赋能:集成智能对话、内容审核等 AI 能力
  • 安全可靠:支持加密、敏感内容过滤
  • 运营管理:提供完整的管理控制台

💻 支持的终端

  • Web/H5
  • iOS/Android
  • Windows/macOS
  • Linux
  • Server API 服务端api

📱 核心功能

即时通讯

  • 单聊/群聊/聊天室
  • 消息已读回执
  • 消息撤回/转发
  • 在线状态同步
  • 多端消息同步
  • 历史消息漫游
  • 消息提醒与免打扰

群组管理

  • 群创建/解散
  • 成员管理
  • 群公告
  • 群权限控制
  • 群消息免打扰

消息类型

  • 文本消息
  • 图片消息
  • 语音消息
  • 视频消息
  • 文件消息
  • 位置消息
  • 自定义消息

AI 能力

  • 智能对话
  • 内容审核
  • 智能推荐
  • 敏感词过滤
  • 多轮对话
  • 多语言支持
  • 知识库问答

🔧 技术栈

后端技术

  • Java 17+
  • Spring Cloud Gateway
  • Spring Boot
  • Dubbo
  • MySQL
  • Redis
  • RocketMQ
  • Nacos
  • Netty WebSocket
  • OpenTelemetry

前端技术

  • Flutter
  • Vue
  • Electron
  • TypeScript
  • WebSocket
  • Protocol Buffers

🌟 系统特性

高可用设计

  • 服务无状态化,支持水平扩展
  • 分布式多机房部署,异地容灾
  • 消息队列削峰填谷
  • 核心服务多副本部署

安全机制

  • 全链路数据加密
  • 用户身份认证
  • 消息防重放
  • 敏感词过滤

性能指标

  • 消息实时性:99.9%消息延迟<500ms
  • 系统容量:单集群支持百万级在线用户
  • 消息可靠性:消息到达率99.99%
  • 系统可用性:99.99%

🚀 快速开始

📚 系统架构

分层架构

  • 接入层:WebSocket/HTTP 网关
  • 业务层:消息、群组、好友等核心服务
  • 存储层:消息存储、关系存储
  • 基础设施:注册中心、配置中心等

核心服务

  • dispatcher: 消息分发服务
  • msghandler: 消息处理服务
  • sync: 消息同步服务
  • gateway: 接入网关服务
  • user: 用户管理服务
  • conversation: 会话管理服务

高可用设计

  • 服务无状态部署
  • 多机房容灾
  • 消息可靠投递
  • 分布式架构

运维工具

  • 配置中心
  • 服务治理
  • 链路追踪
  • 日志分析

管理后台

  • 用户管理
  • 群组管理
  • 消息管理
  • 系统配置
  • 运营数据统计

开源协议

MIT

📖 文档

🤝 社区

🎯 路线图

即将发布

  • 端到端加密
  • 消息回执增强
  • 群管理功能增强
  • AI 助手集成
  • 多语言SDK支持

规划中

  • 实时音视频
  • 互动白板
  • 消息翻译
  • 更多 AI 能力
  • 性能优化

🌟 贡献指南

欢迎提交 Pull Request 或 Issue!

  1. Fork 本仓库
  2. 创建您的特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的修改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 打开一个 Pull Request

❤️ 致谢

感谢所有为这个项目做出贡献的开发者!

📞 联系我们

About

IM-AI-Server 是一个Java的即时通讯系统,提供 iOS、Android、Web 等多端 IM SDK,支持快速集成和二次开发,并具备完整 IM 能力和 AI 智能对话功能。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published