d6c87683af
fix: 飞书长连接改用 ThreadPoolExecutor 处理消息
...
- 用 ThreadPoolExecutor(max_workers=5) 替代单次 threading.Thread
- 支持并发处理多条消息,避免排队阻塞
- 添加消息序号日志,方便追踪消息接收和处理
- _process_message_safe 包装确保异常不会导致线程崩溃
- 如果消息确实没被 SDK 推送,日志里不会有对应的 #N 记录
2026-04-02 16:24:58 +08:00
18fb3155ba
fix: LLM 回复禁用 markdown 格式,适配飞书纯文本消息
...
- system prompt 明确要求纯文本回复
- 禁止 **加粗**、# 标题、- 列表等 markdown 语法
- 步骤列举改用中文序号(第一步/1)等)
2026-04-02 16:01:40 +08:00
b7627927d4
fix: 长连接 sender_id 提取修复 + 去重复赋值
...
- 移除重复的 sender_id = sender.sender_id.user_id 赋值(会覆盖已修复的值)
- 添加 sender_id 属性调试日志,方便排查 SDK 对象结构
- 优先用 open_id 构造会话标识,避免 user_id 为 None 的问题
- get_user_info 无权限时用 open_id 缩写作为标识
2026-04-02 15:58:31 +08:00
eb127ed897
fix: 飞书长连接消息处理改为后台线程,防止漏接收
...
- _handle_message 立即派发到 threading.Thread 处理,不阻塞 SDK 事件循环
- 解决 LLM 响应慢时后续消息排队/丢失的问题
- 精简日志输出,去掉冗余分隔线
2026-04-02 15:52:30 +08:00
d27b6a9c87
fix: 飞书发送者信息获取修复
...
- sender_id 优先用 open_id(user_id 在无权限时为 None)
- get_user_info 默认用 open_id 类型查询
- contact API 无权限时优雅降级,用 ID 缩写作为标识(用户_xxx)
- feishu_bot 和 longconn 都统一了 sender 提取逻辑
2026-04-02 15:47:36 +08:00
c07cbf47c8
feat: 飞书消息记录完善 记录发送者ID、姓名、群信息
...
- FeishuService 新增 get_user_info() 根据 user_id 获取飞书用户姓名
- feishu_bot.py 处理消息时获取发送者姓名,日志格式改为:发送者=姓名(ID), 群=chat_id, 类型=群聊/私聊, 租户=xxx
- feishu_longconn_service.py 同样获取发送者姓名并记录
- Conversation.ip_address 存储 feishu:user_id:sender_name(扩大字段到200字符)
- Conversation.invocation_method 存储 feishu_bot(group) / feishu_longconn(p2p) 等详细来源
- ChatSession.source 同步记录详细来源信息
2026-04-02 15:40:26 +08:00
88a79d1936
feat: 飞书群自动发现与可视化绑定
...
- FeishuService 新增 list_bot_chats() 拉取机器人所在的所有群(含群名、chat_id)
- 新增 GET /api/tenants/feishu-groups 端点,返回群列表并标注每个群当前绑定的租户
- 租户编辑弹窗改为可视化群列表(checkbox 勾选绑定),替代手动填 chat_id
- 已绑定其他租户的群显示为禁用状态,防止重复绑定
- 编辑租户时自动加载群列表
- 新建租户时可手动刷新群列表
2026-04-02 15:30:02 +08:00
28e90d2182
fix: 飞书群绑定租户完善
...
- tenants.js 去掉已删除的 appid/appsecret 元素引用
- showEditTenantModal 改为从 API 加载完整租户数据(不再传参拼接)
- saveTenant 保留已有的非 feishu 配置,只更新 chat_groups
- 租户列表显示绑定群数量或'未绑定飞书群'
- 飞书 bot/longconn 复用已有会话时同步更新 tenant_id(群重新绑定后立即生效)
- 删除租户后同步刷新租户选择器
2026-04-02 15:25:50 +08:00
683b64ed62
fix: 工单详情AI建议区域UI统一为Bootstrap 5风格
...
- 去掉自定义 ai-suggestion-section/generate-ai-btn 等样式
- 改用 Bootstrap card + badge + btn 组件
- 相似度和审批状态用 badge bg-success/warning/danger
- 按钮用 btn btn-sm 标准样式
- 租户管理飞书配置简化为只保留群绑定(去掉独立凭证字段)
- 未绑定群的消息日志增加提示
2026-04-02 15:21:00 +08:00
44cfe2a0ea
fix: 租户管理标签页位置修复 从模态框区域移到主内容区域内
2026-04-02 15:15:52 +08:00
58b3c615ef
refactor: dashboard.js 模块化拆分 从7766行拆为13个独立模块
...
核心 dashboard.js 缩减至266行,只保留:
- TSPDashboard class 定义(constructor、init、bindEvents、switchTab)
- 分页组件、缓存、状态管理、自动刷新、WebSocket、i18n
功能模块拆分到 modules/ 目录:
- chat.js (207行) 智能对话
- agent.js (424行) Agent管理
- alerts.js (348行) 预警管理
- knowledge.js (699行) 知识库管理
- workorders.js (约500行) 工单管理
- conversations.js (671行) 对话历史
- monitoring.js (455行) Token/AI监控
- system.js (1388行) 系统优化+设置+数据分析图表
- tenants.js (165行) 租户管理
- utils.js (573行) 工具函数
- dashboard-home.js (286行) 仪表板首页
- feishu-sync.js (698行) 飞书同步管理器
拆分方式:Object.assign(TSPDashboard.prototype, {...})
this 引用完全不会断,所有模块方法互相调用正常
2026-04-02 15:10:23 +08:00
d691007c86
fix: 工单管理字段语义统一 + AI建议修复 + 租户筛选
...
1. 统一字段语义:title=问题标题,description=问题详细描述,resolution=解决方案
2. 修复详情页展示:问题描述取 description 而非 title
3. 修复编辑页标签:description 标注为'问题详细描述'而非'处理过程'
4. 统一分类选项:创建和编辑使用相同的分类列表(技术问题/APP功能/远程控制/车辆绑定/系统故障/OTA升级/其他)
5. 修复 AI 建议生成:用 title+description 搜索知识库,prompt 中明确区分标题和描述
6. 修复入库逻辑:question 使用 title+description 完整内容,入库时带上工单的 tenant_id
7. 工单列表新增租户筛选器,API 支持 tenant_id 过滤
8. 工单列表和详情 API 返回 tenant_id 字段
9. 租户选择器同时填充对话和工单筛选下拉框
2026-04-02 10:04:39 +08:00
7950cd8237
feat: 飞书机器人按租户路由 群组绑定租户 + 独立凭证 + 知识库隔离
...
1. 新增 resolve_tenant_by_chat_id() 根据飞书群 chat_id 查找绑定的租户
2. 新增 get_tenant_feishu_config() 获取租户级飞书凭证
3. FeishuService 支持传入自定义 app_id/app_secret(租户级别)
4. feishu_bot.py 收到消息时自动解析租户,使用租户凭证回复
5. feishu_longconn_service.py 同样按 chat_id 解析租户并传递 tenant_id
6. 租户管理 UI 新增飞书配置字段:App ID、App Secret、绑定群 Chat ID
7. 租户列表展示飞书绑定状态和群数量
8. 保存租户时同步更新飞书配置到 config JSON
2026-04-02 09:58:04 +08:00
edb0616f7f
feat: 租户管理体系建设 CRUD + 各业务模块接入 tenant_id
...
1. 新增 Tenant 模型(tenants 表),支持租户创建、重命名、删除
2. 新增 /api/tenants CRUD 蓝图,default 租户不可删除
3. 数据库初始化时自动创建默认租户记录
4. Dashboard 新增租户管理标签页(创建/编辑/删除租户)
5. 各业务模块写入数据时正确传递 tenant_id:
- realtime_chat: create_session 和 _save_conversation 支持 tenant_id
- dialogue_manager: _save_conversation 和 create_work_order 支持 tenant_id
- conversation_history: save_conversation 支持 tenant_id
- workorder_sync: sync_from_feishu 支持 tenant_id
- websocket_server: create_session 传递 tenant_id
- HTTP chat API: create_session 传递 tenant_id
- feishu_sync API: 同步时传递 tenant_id
- workorders API: 创建工单时传递 tenant_id
6. 网页对话入口添加租户选择器
7. 知识库搜索按租户隔离(realtime_chat 中 _search_knowledge 传递 tenant_id)
8. 初始化时自动加载租户列表填充选择器
2026-04-02 09:33:16 +08:00
7013e9db70
feat: 对话历史页面租户分组展示功能
...
- 新增 ConversationHistoryManager.get_tenant_summary() 按租户聚合会话统计
- get_sessions_paginated() 和 get_conversation_analytics() 增加 tenant_id 过滤
- 新增 GET /api/conversations/tenants 租户汇总端点
- sessions 和 analytics API 端点支持 tenant_id 查询参数
- 前端实现租户卡片列表视图和租户详情会话表格视图
- 实现面包屑导航、搜索范围限定、统计面板上下文切换
- 会话删除后自动检测空租户并返回列表视图
- dashboard.html 添加租户视图 DOM 容器
- 交互模式与知识库租户分组视图保持一致
2026-04-01 16:11:02 +08:00
e14e3ee7a5
大改,未验证
2026-03-20 16:50:26 +08:00
root
c7ee292c4f
增加机器人能力
2026-03-20 10:29:45 +08:00
zhaojie
bc536898a1
优化相似度对比
2026-02-11 22:54:51 +08:00
zhaojie
d0dd18342f
feat: 优化飞书集成、知识库、Agent、工单管理及AI建议功能,统一前端对话字体样式并移除工单模板文件。
2026-02-11 22:53:08 +08:00
zhaojie
5e93473294
机器人赋能
2026-02-11 14:41:37 +08:00
zhaojie
e3a0396567
feat: 新增飞书长连接模式,无需公网域名
...
## 🚀 重大更新
### 飞书集成升级
- ✅ 迁移到飞书官方 SDK 的事件订阅 2.0(长连接模式)
- ✅ 无需公网域名和 webhook 配置
- ✅ 支持内网部署
- ✅ 自动重连机制
### 核心功能优化
- ✅ 优化群聊隔离机制(每个用户在每个群独立会话)
- ✅ 增强日志输出(emoji 标记便于快速识别)
- ✅ 完善错误处理和异常恢复
- ✅ 添加 SSL 证书问题解决方案
### 新增文件
- `src/integrations/feishu_longconn_service.py` - 飞书长连接服务
- `start_feishu_bot.py` - 启动脚本
- `test_feishu_connection.py` - 连接诊断工具
- `docs/FEISHU_LONGCONN.md` - 详细使用文档
- `README.md` - 项目说明文档
### 技术改进
- 添加 lark-oapi==1.3.5 官方 SDK
- 升级 certifi 包以支持 SSL 验证
- 优化配置加载逻辑
- 改进会话管理机制
### 文档更新
- 新增飞书长连接模式完整文档
- 更新快速开始指南
- 添加常见问题解答(SSL、权限、部署等)
- 完善架构说明和技术栈介绍
## 📝 使用方式
启动飞书长连接服务(无需公网域名):
```bash
python3 start_feishu_bot.py
```
详见:docs/FEISHU_LONGCONN.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-11 14:10:18 +08:00
zhaojie
e4b76def44
feat: 强制重新加载配置以覆盖环境变量
...
- 在 `reload_config` 函数中新增了对 `.env` 文件的强制读取,确保环境变量的最新配置被加载。
2026-02-11 00:38:23 +08:00
zhaojie
bdef0f72e8
修改飞书配置
2026-02-11 00:32:37 +08:00
zhaojie
18bbbe0f46
前端适配成果总结
...
1. 对话审计功能展示
- 修改了 src/web/static/js/chat.js:在侧边栏的“会话信息”中实时展示当前会话的 IP 地址 和 唤起方式(如 Web, API, WebSocket)。
- 更新了 src/web/templates/chat.html:新增了用于承载审计信息的 UI 占位符。
2. 工单管理深度集成
- 列表页增强:在工单列表中新增了“区域 (Region)”和“分配模块 (Assigned Module)”列,方便快速筛选。
- 详情页完善:在工单详情弹窗中,现在可以清晰看到 负责人 (Module Owner)、分发人 (Dispatcher) 及 分发时间。
- 历史追踪:新增了“处理历史”时间轴视图,将后端采集的工单流转记录直观地展示给管理人员。
项目整体状态清单
- 后端逻辑: 修复了数据库 Schema 不一致、环境变量配置读取、及查询优化器的字段缺失问题。
- 知识库增强: 日志系统现在会详细记录 AI 解析文档和向量搜索的置信度分值。
- 文档同步: 全程同步更新 README.md 和 CLAUDE.md 至 v2.2.0。
- 代码管理: 所有更改(包括前端适配、后端修复、文档更新)已成功推送到远端 Git 仓库。
2026-02-11 00:29:18 +08:00
zhaojie
c3560b43fd
docs: update README and CLAUDE.md to v2.2.0
...
- Added documentation for audit tracking (IP address, invocation method).
- Updated database model descriptions for enhanced WorkOrder and Conversation fields.
- Documented the new UnifiedConfig system.
- Reflected enhanced logging transparency for knowledge base parsing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-11 00:08:09 +08:00
2026007045
refactor: 移除冗余文件并优化代码结构
...
- 删除多个不再使用的脚本和配置文件,包括 `auto_push.bat`, `check_and_fix_users.py`, `init.sql` 等。
- 新增 `git_push.bat` 和 `git_push.sh` 脚本以简化 Git 推送流程。
- 更新 `README.md` 以反映最新的功能和结构变化。
- 优化前端代码,添加新的页面和组件,提升用户体验。
此提交旨在清理项目结构并增强代码可维护性。
2025-12-08 00:53:23 +08:00
Jeason
20c5ce355a
fix: 修复前端导航和页面跳转问题
...
- 添加统一的导航菜单到所有页面
- 修复页面路由映射和高亮状态
- 创建 navigation.js 统一管理页面跳转
- 添加 test_navigation.py 路由测试工具
- 支持仪表板、预警管理、智能对话、HTTP对话页面间无缝切换
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com >
2025-12-07 10:12:17 +08:00
148a2fc9d6
feat:测试验证
2025-11-05 10:43:36 +08:00
赵杰 Jie Zhao (雄狮汽车科技)
c9d5c80f42
feat: 娣诲姞澶氫釜鏂板姛鑳藉拰淇 - 鍖呮嫭鐢ㄦ埛绠$悊銆佹暟鎹簱杩佺Щ銆丟it鎺ㄩ€佸伐鍏风瓑
2025-11-05 10:16:34 +08:00
赵杰 Jie Zhao (雄狮汽车科技)
a4261ef06f
feat: optimize AI suggestion and workorder sync - support same-day multiple update numbering - insert new suggestions at top maintaining reverse chronological order - reference process history when generating suggestions - simplify prompts to avoid forcing log analysis - fix Chinese comment encoding issues
2025-10-27 10:34:33 +08:00
赵杰
63600d1bc2
feat: 自动提交 - 周二 2025/09/23 15:32:55.51
2025-09-23 15:32:55 +01:00
赵杰
6b0c03439f
feat: 自动提交 - 周二 2025/09/23 14:03:10.47
2025-09-23 14:03:10 +01:00
赵杰
4da97d600a
优化界面布局,参考CRM系统,调整字体,优化分页显示
2025-09-22 17:06:43 +01:00
赵杰
eff24947e0
feat: 自动提交 - 周一 2025/09/22 16:50:40.70
2025-09-22 16:50:40 +01:00
赵杰
d6c88d87dd
feat: 自动提交 - 周一 2025/09/22 16:28:00.19
2025-09-22 16:28:00 +01:00
赵杰
b635c9e7d4
feat: 自动提交 - 周一 2025/09/22 15:12:38.91
2025-09-22 15:12:38 +01:00
赵杰
9306e7a401
feat: 自动提交 - 周一 2025/09/22 14:48:02.54
2025-09-22 14:48:02 +01:00
赵杰
070422cd06
减少不必要模块,增加中英文切换
2025-09-22 13:55:29 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
54a13531c4
feat: 快速提交 - 周一 2025/09/22 13:29:14.32
2025-09-22 13:29:14 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
91a86a1f4f
feat: 快速提交 - 周一 2025/09/22 12:25:23.70
2025-09-22 12:25:23 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
a2b4fcdf36
feat: 快速提交 - 周一 2025/09/22 11:54:13.80
2025-09-22 11:54:14 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
16bb98131e
feat: 自动提交 - 周一 2025/09/22 11:24:32.93
2025-09-22 11:24:32 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
059eefd961
修复大盘
2025-09-19 20:13:35 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
dd5f7ed3ce
feat: 自动提交 - 周五 2025/09/19 20:09:33.44
2025-09-19 20:09:33 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
a884eafc64
工单导入及下载
2025-09-19 19:58:54 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
45beca7f94
feat: 自动提交 - 周五 2025/09/19 19:42:44.04
2025-09-19 19:42:44 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
da4736c323
feat: 重大功能更新 v1.4.0 - 飞书集成、AI语义相似度、前端优化
...
主要更新内容:
- 🚀 飞书多维表格集成,支持工单数据同步
- 🤖 AI建议与人工描述语义相似度计算
- 🎨 前端UI全面优化,现代化设计
- 📊 智能知识库入库策略(AI准确率<90%使用人工描述)
- 🔧 代码重构,模块化架构优化
- 📚 完整文档整合和更新
- 🐛 修复配置导入和数据库字段问题
技术特性:
- 使用sentence-transformers进行语义相似度计算
- 快速模式结合TF-IDF和语义方法
- 响应式设计,支持移动端
- 加载状态和动画效果
- 配置化AI准确率阈值
2025-09-19 19:32:42 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
79cf316c63
修复AI建议逻辑和字段映射问题
...
- 修复AI建议基于问题描述而不是处理过程生成
- 修复工单详情页面显示逻辑
- 修复飞书时间字段处理(毫秒时间戳转换)
- 优化字段映射和转换逻辑
- 添加飞书集成功能
- 改进对话历史合并功能
- 优化系统优化反馈机制
2025-09-19 17:29:33 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
66f44143d9
修复Redis重复连接问题
...
- 创建统一Redis管理器(src/core/redis_manager.py),使用单例模式避免重复连接
- 修改对话历史管理器,使用统一Redis管理器
- 修改Token监控模块,使用统一Redis管理器
- 修改AI成功率监控模块,使用统一Redis管理器
- 修复所有语法错误和缩进问题
- 优化启动性能,减少Redis连接时间2-3秒
- 解决启动时重复Redis连接日志问题
2025-09-18 20:48:16 +01:00
赵杰 Jie Zhao (雄狮汽车科技)
ad396e4294
修复重复初始化问题 - 统一Redis连接管理
...
主要修复:
1. 创建统一Redis连接管理器 (src/core/redis_manager.py)
- 单例模式管理所有Redis连接
- 懒加载连接,避免重复初始化
- 线程安全的连接管理
2. 更新所有Redis使用模块
- TokenMonitor: 使用统一Redis管理器
- AISuccessMonitor: 移除重复Redis连接代码
- SystemOptimizer: 统一Redis连接管理
- ConversationHistoryManager: 使用统一Redis管理器
3. 修复DialogueManager重复初始化
- 使用懒加载属性(@property)避免重复创建监控器
- 只有在实际使用时才创建实例
4. 优化启动性能
- 避免重复的Redis连接创建
- 消除重复的TSP助手初始化
- 减少启动时的日志输出
技术改进:
- 单例模式Redis管理器
- 懒加载组件初始化
- 统一连接管理
- 线程安全设计
解决启动卡顿问题,提升系统响应速度
2025-09-18 20:37:27 +01:00