- 从服务器拉取完整代码 - 按框架规范整理项目结构 - 配置 Drone CI 测试环境部署 - 包含后端(FastAPI)、前端(Vue3)、管理端 技术栈: Vue3 + TypeScript + FastAPI + MySQL
70 lines
1.8 KiB
Markdown
70 lines
1.8 KiB
Markdown
# 播课功能
|
||
|
||
## 功能概述
|
||
|
||
管理员在课程编辑页点击"生成播课"按钮,触发 Coze 工作流生成综合播课音频。学员可在课程中心点击"播课"按钮播放。
|
||
|
||
## 核心策略
|
||
|
||
**触发即可,Coze工作流直接写数据库**
|
||
|
||
- 后端API只负责触发Coze工作流,立即返回
|
||
- Coze工作流生成音频后直接执行SQL更新数据库
|
||
- 前端刷新页面即可看到最新结果,无需轮询
|
||
|
||
## 架构设计
|
||
|
||
1. **管理员触发**:课程编辑页点击"生成播课"
|
||
2. **后端触发**:调用 Coze API,立即返回
|
||
3. **Coze工作流**:生成音频 + 直接写数据库
|
||
4. **用户查看**:刷新页面查看结果
|
||
|
||
## 技术要点
|
||
|
||
- 使用 `asyncio.to_thread()` 避免同步SDK阻塞
|
||
- Coze工作流配置MySQL连接(端口3307)
|
||
- 数据库只需2个字段:`broadcast_audio_url`、`broadcast_generated_at`
|
||
- 极简架构:无需后台任务、状态轮询、状态字段
|
||
|
||
## 文档说明
|
||
|
||
- **Coze工作流运行API文档.md** - Coze API调用规范
|
||
- **播课功能API接口规范.md** - 后端API接口定义
|
||
- **播课功能技术方案.md** - 技术架构和实现细节
|
||
- **播课功能验收清单.md** - 功能验收标准
|
||
|
||
## 数据库配置
|
||
|
||
Coze工作流连接生产环境数据库:
|
||
|
||
```
|
||
主机:120.79.247.16 或 aiedu.ireborn.com.cn
|
||
端口:3307(容器映射端口)
|
||
数据库:kaopeilian
|
||
用户:root
|
||
密码:nj861021
|
||
```
|
||
|
||
SQL更新语句:
|
||
|
||
```sql
|
||
UPDATE courses
|
||
SET
|
||
broadcast_audio_url = '{mp3_url}',
|
||
broadcast_generated_at = NOW(),
|
||
updated_at = NOW()
|
||
WHERE id = {course_id}
|
||
```
|
||
|
||
## 验证状态
|
||
|
||
✅ 已完成端到端联调
|
||
✅ Coze工作流成功写入远程数据库
|
||
✅ 无linter错误
|
||
✅ 生产环境验证通过
|
||
|
||
---
|
||
|
||
**实施日期**: 2025-10-14
|
||
**最后更新**: 2025-10-14
|