# AQChatServer
**Repository Path**: xitmen/aq-chat-server
## Basic Information
- **Project Name**: AQChatServer
- **Description**: 一个接入AI的极速、便捷的匿名在线即时聊天(IM)。且基于netty以及protobuf协议实现高性能,对标游戏后端开发,0HTTP。
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: https://aqchat.run
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 186
- **Created**: 2024-06-17
- **Last Updated**: 2024-06-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# AQChatServer
### 介绍
AQChat 一个已接入AI✨的极速、便捷的匿名在线即时AI聊天室。
- 对标游戏后端开发,采用Netty作为通讯框架,支持高并发,高性能的即时通讯
- 全程无需HTTP协议,支持文本、图片、文件、音频、视频的发送和接收
- 消息提醒
- 消息撤回重新编辑
- 艾特成员/AI助手
- ······
### 其他仓库
>本项目为服务端代码
WEB端: AQChat
移动端: AQChat-Mobile
### 项目预览
项目演示地址:https://www.aqchat.run
>pc端访问默认访问WEB端地址,移动端访问跳转移动端地址
### 项目架构说明
| 模块 | 说明 |
|------------------|---------------------------|
| aqchat-common | AQChat项目公共模块,包含一些工具类和常量 |
| aqchat-framework | AQChat项目框架模块,包含对中间件的封装和配置 |
| aqchat-im | AQChat项目IM核心模块,负责通讯协议以及和前端的连接 |
| aqchat-service | AQChat项目业务逻辑层,包含业务逻辑的实现 |
| aqchat-ai | AQChat项目AI功能模块,负责接入AI大模型 |
### 项目环境
| 环境 | 版本 |
|--------------|--------------|
| JDK | 17 |
| Netty | 4.1.89.Final |
| SpringBoot | 3.2.5 |
| Mybatis-Plus | 3.5.5 |
| Protobuf | 3 |
| MySQL | 8.0.34 |
| Redis | 6.0.8 |
| RocketMQ | 4.4.0 |
| OSS | 阿里云OSS |
| AI大模型 | 通义千问MAX |
### 项目截图
# 部署文档

- 微信扫一扫二维码关注公众号
- 发送aqchat可获取AQChat部署教程
- 发送aqchatonekey可获取AQChat一键部署脚本
## 部署可能会用到的平台文档
使用STS临时访问凭证访问OSS
大模型服务平台百炼
## 更新日志
### 2024.06.16
- 支持无AI启动
### 2024.06.10
- ✨ AI大模型接入
### 2024.05.26
- ✨ 消息撤回功能
### 2024.05.24
- ✅ 失败消息重发功能
- ✨ 房间成员离线通知
### 2024.05.23
- ✅ 房间成员列表
- ✨ 刷新页面仅同步加入房间后的消息
### 2024.05.18
- ✨ 成员退出房间通知
### 2024.05.11
- ✅ 刷新页面恢复用户登录
- ✅ 刷新页面同步聊天信息
- ✨ 退出登录
### 更前
- ✅ 发送消息
- ✨ 成员加入房间通知
- ✅ 房间号输入加入房间
- ✅ 创建房间