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

3.1 KiB

聊天功能快速开始

快速配置

1. 添加菜单路由

在后台管理系统的菜单配置中添加以下菜单项:

{
  "name": "聊天列表",
  "path": "/chat/chat_list",
  "component": "chat/chat_list",
  "icon": "md-chatbubbles"
}

2. 启动项目

# 启动后端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测试

测试获取聊天列表

curl -X POST http://localhost:3000/admin_api/chat/list \
  -H "Content-Type: application/json" \
  -d '{
    "page": 1,
    "pageSize": 20
  }'

测试发送消息

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"
  }'

测试获取指定职位的聊天记录

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生成智能回复
  • 支持富文本和文件消息

性能优化

  • 实现消息虚拟滚动
  • 添加消息缓存机制
  • 优化大量会话的加载性能

用户体验

  • 添加消息已读状态
  • 支持消息撤回
  • 添加消息搜索功能
  • 支持会话置顶和归档

技术支持

如有问题,请查看:

更新记录

  • 2025-01-XX: 初始版本发布
    • 实现基础聊天列表功能
    • 支持消息发送和接收
    • 添加轮询机制
    • 支持平台筛选和搜索