3.3 KiB
3.3 KiB
Phi Plugin for MoFox_Bot
基于MoFox_Bot插件系统的Phigros查分插件,移植自原phi-plugin项目。
插件化进展
✅ 已完成
-
基础架构搭建
- 创建了完整的插件目录结构
- 实现了_manifest.json和config.toml配置文件
- 建立了MoFox_Bot插件系统兼容的基础框架
-
命令系统迁移
- 实现了5个核心命令的PlusCommand适配:
phi help- 帮助命令phi bind- sessionToken绑定命令phi b30- Best30查询命令phi info- 个人信息查询命令phi score- 单曲成绩查询命令
- 实现了5个核心命令的PlusCommand适配:
-
数据管理模块
- 创建了PhiDataManager用于数据处理
- 创建了PhiDatabaseManager用于数据库操作
- 设计了统一的数据访问接口
-
配置与元数据
- 符合MoFox_Bot规范的manifest文件
- 支持功能开关的配置文件
- 完整的插件依赖管理
🚧 待实现
-
核心功能逻辑
- Phigros API调用实现
- sessionToken验证逻辑
- 存档数据解析处理
- B30等数据计算算法
-
数据存储
- 用户token数据库存储
- 曲库数据导入
- 别名系统迁移
-
图片生成
- B30成绩图片生成
- 个人信息卡片生成
- 单曲成绩展示图
-
高级功能
- 更多原phi-plugin命令迁移
- 数据缓存优化
- 性能监控
目录结构
src/plugins/phi_plugin/
├── __init__.py # 插件初始化
├── plugin.py # 主插件文件
├── _manifest.json # 插件元数据
├── config.toml # 插件配置
├── README.md # 本文档
├── commands/ # 命令实现
│ ├── __init__.py
│ ├── phi_help.py # 帮助命令
│ ├── phi_bind.py # 绑定命令
│ ├── phi_b30.py # B30查询
│ ├── phi_info.py # 信息查询
│ └── phi_score.py # 单曲成绩
├── utils/ # 工具模块
│ ├── __init__.py
│ └── data_manager.py # 数据管理器
├── data/ # 数据文件
└── static/ # 静态资源
使用方式
命令列表
/phi help- 查看帮助/phi bind <token>- 绑定sessionToken/phi b30- 查询Best30成绩/phi info [1|2]- 查询个人信息/phi score <曲名>- 查询单曲成绩
配置说明
编辑 config.toml 文件可以调整:
- 插件启用状态
- API相关设置
- 功能开关
技术特点
- 架构兼容:完全符合MoFox_Bot插件系统规范
- 命令适配:使用PlusCommand系统,支持别名和参数解析
- 模块化设计:清晰的模块分离,便于维护和扩展
- 异步处理:全面使用async/await进行异步处理
- 错误处理:完善的异常处理和用户提示
开发说明
目前插件已完成基础架构搭建,可以在MoFox_Bot中正常加载和注册命令。
下一步开发重点:
- 实现Phigros API调用逻辑
- 完成数据库存储功能
- 移植原插件的核心算法
- 实现图片生成功能
原始项目
基于 phi-plugin 进行插件化改造。