- 从服务器拉取完整代码 - 按框架规范整理项目结构 - 配置 Drone CI 测试环境部署 - 包含后端(FastAPI)、前端(Vue3)、管理端 技术栈: Vue3 + TypeScript + FastAPI + MySQL
1.8 KiB
1.8 KiB
播课功能
功能概述
管理员在课程编辑页点击"生成播课"按钮,触发 Coze 工作流生成综合播课音频。学员可在课程中心点击"播课"按钮播放。
核心策略
触发即可,Coze工作流直接写数据库
- 后端API只负责触发Coze工作流,立即返回
- Coze工作流生成音频后直接执行SQL更新数据库
- 前端刷新页面即可看到最新结果,无需轮询
架构设计
- 管理员触发:课程编辑页点击"生成播课"
- 后端触发:调用 Coze API,立即返回
- Coze工作流:生成音频 + 直接写数据库
- 用户查看:刷新页面查看结果
技术要点
- 使用
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更新语句:
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