3.4 KiB
3.4 KiB
studycourse-analysis — 角色上课情况分析
功能
分析角色上课情况,从四个维度输出详细报告:
- 基础信息:角色姓名、年龄、账号、手机号、注册时间、购买渠道、设备信息、首/末次完课
- 完课耗时分析:平均/中位数完成时间、异常耗时(<10 分钟或>20 分钟)、耗时趋势
- 中互动正确率分析:Perfect/Good/Oops 占比、优良率、趋势变化
- 知识巩固分析:巩固练习完成率、得分分布
Markdown 报告末尾提示用户可选择生成 HTML 文件,确认后生成。
触发词
分析角色[ID]的上课情况
如:分析角色32009的上课情况
数据源
| 类型 | 库 | 表 |
|---|---|---|
| MySQL vala_user | vala_app_character |
角色基本信息、purchase_season_package |
| MySQL vala_user | vala_app_account |
账号信息、download_channel、key_from |
| MySQL vala | vala_game_chapter + vala_game_season_package |
章节 Level/Unit/Lesson 映射 |
| PostgreSQL vala | user_course_detail |
课程激活时间、到期时间、course_level |
| PostgreSQL vala | user_login_app_info |
设备信息(device_name/model/type/os) |
| PostgreSQL vala | user_chapter_play_record_0~7 |
完课记录(play_status=1) |
| PostgreSQL vala | user_component_play_record_0~7 |
中互动记录(play_result: Perfect/Good/Oops) |
| PostgreSQL vala | user_chapter_settlement_data_0~7 |
结算数据(含 practiceSkillPoint/practiceCount) |
使用方式
cd /root/.openclaw/workspace-xiaoban
# 设置环境变量(secrets.md)
source secrets.md
# 生成 Markdown 报告
python3 skills/studycourse-analysis/scripts/studycourse_analysis.py <role_id>
# 生成 HTML 报告
python3 skills/studycourse-analysis/scripts/studycourse_analysis.py <role_id> --format html -o output/studycourse_<role_id>.html
交互流程
- 用户发送
分析角色[ID]的上课情况 - 运行 Markdown 分析报告,显示四步分析结果
- 报告末尾自动提示
💡 是否需要将以上详细分析报告生成一份 HTML 文件?回复「是」或「需要」即可。 - 用户回复「是」或「需要」后,生成 HTML 文件并发送
HTML 结构
5 个 card 布局 section:
- 基础信息 — 角色ID、姓名、年龄、账号ID、手机号后4位、注册时间、课程激活/到期、购买渠道、设备、首/末次完课
- 完课记录明细 — 表格,每行含 Level/Unit/Lesson、开始/完课时间、耗时、中互动汇总、巩固完成/题数/正确率
- 上课时间分析 — 耗时统计分析
- 中互动正确率分析 — 正确率趋势
- 知识巩固正确率分析 — 得分分布
关键逻辑
- 章节映射:复用 studytime-analysis 的 fetch_chapter_info_map(),按 (level, season_of_quarter) 分组计算全局 unit_index
- 巩固判断:
settlement_data.practiceSkillPoint > 0视为已完成巩固(isPractice字段不可靠) - 中互动:
user_component_play_record.play_result统计 Perfect/Good/Oops/Pass/Failed - 异常耗时:<10 分钟为过快,>20 分钟为过慢
- 趋势分析:将数据按时间分前后两半,对比均值变化
凭证
数据库凭证从环境变量注入,不硬编码。配置项与 studytime-analysis 共用:
PG_DB_HOST/PORT/USER/PASSWORD/DATABASEMYSQL_HOST_online/PORT_online/USERNAME_online/PASSWORD_online
版本
v1.0.0 — 2026-05-24 初始版本