Files
autoAiWorkSys/_doc/聊天功能快速开始.md
张成 5d7444cd65 1
2025-11-24 13:23:42 +08:00

152 lines
3.1 KiB
Markdown

# 聊天功能快速开始
## 快速配置
### 1. 添加菜单路由
在后台管理系统的菜单配置中添加以下菜单项:
```json
{
"name": "聊天列表",
"path": "/chat/chat_list",
"component": "chat/chat_list",
"icon": "md-chatbubbles"
}
```
### 2. 启动项目
```bash
# 启动后端API服务
cd api
npm install
npm start
# 启动前端管理后台
cd admin
npm install
npm run dev
```
### 3. 访问聊天列表
在浏览器中访问: `http://localhost:8080/#/chat/chat_list`
## 功能演示
### 查看会话列表
1. 左侧显示所有聊天会话
2. 每个会话显示:
- 公司名称
- 职位名称
- 最新消息内容
- 消息时间
- 平台标签(Boss/猎聘)
### 查看聊天记录
1. 点击左侧的任意会话
2. 右侧显示完整的聊天历史记录
3. 消息按时间顺序排列
4. 区分发送和接收的消息
### 发送消息
1. 选择一个会话
2. 在底部输入框输入消息
3. 点击"发送"按钮或按回车键
4. 消息发送成功后会自动刷新
### 筛选和搜索
- **平台筛选**: 选择Boss直聘或猎聘
- **关键词搜索**: 输入公司名称或职位名称
## API测试
### 测试获取聊天列表
```bash
curl -X POST http://localhost:3000/admin_api/chat/list \
-H "Content-Type: application/json" \
-d '{
"page": 1,
"pageSize": 20
}'
```
### 测试发送消息
```bash
curl -X POST http://localhost:3000/admin_api/chat/send \
-H "Content-Type: application/json" \
-d '{
"sn_code": "GHJU",
"jobId": "12345",
"content": "您好,我对这个职位很感兴趣",
"platform": "boss",
"chatType": "reply"
}'
```
### 测试获取指定职位的聊天记录
```bash
curl -X GET "http://localhost:3000/admin_api/chat/by-job?jobId=12345&sn_code=GHJU"
```
## 常见问题
### 1. 页面显示空白?
- 检查API服务是否正常运行
- 检查浏览器控制台是否有错误
- 确认数据库中是否有聊天记录数据
### 2. 消息发送失败?
- 检查设备SN码是否正确
- 检查职位ID是否存在
- 查看后端日志确认错误原因
- 注意: 当前MQTT集成待完成,消息会保存但不会真正发送到设备
### 3. 轮询不工作?
- 检查浏览器控制台是否有网络错误
- 确认轮询定时器是否正常启动
- 可以调整轮询间隔 (默认5秒)
### 4. 会话列表为空?
- 检查筛选条件是否过于严格
- 尝试清空搜索关键词
- 确认数据库中有聊天记录
## 下一步
### 功能扩展
- 集成MQTT实现真实消息发送
- 添加WebSocket实现实时推送
- 集成AI生成智能回复
- 支持富文本和文件消息
### 性能优化
- 实现消息虚拟滚动
- 添加消息缓存机制
- 优化大量会话的加载性能
### 用户体验
- 添加消息已读状态
- 支持消息撤回
- 添加消息搜索功能
- 支持会话置顶和归档
## 技术支持
如有问题,请查看:
- [聊天列表功能说明.md](./聊天列表功能说明.md) - 完整的功能文档
- 项目代码中的注释
- 后端API的Swagger文档
## 更新记录
- **2025-01-XX**: 初始版本发布
- 实现基础聊天列表功能
- 支持消息发送和接收
- 添加轮询机制
- 支持平台筛选和搜索