Files
WechatHookBot/docs/项目概览.md
2025-12-03 15:48:44 +08:00

7.5 KiB
Raw Permalink Blame History

WechatHookBot 项目概览

📁 当前项目结构

WechatHookBot/
├── docs/                           # 📚 文档目录
│   ├── 项目概览.md                 # 本文件
│   ├── 快速开始.md                 # 安装和运行指南
│   ├── 架构设计.md                 # 技术架构文档
│   ├── 插件开发.md                 # 插件开发指南
│   └── API文档.md                  # API 接口文档
├── main_config.toml                # ⚙️ 主配置文件
├── requirements.txt                # 📦 Python 依赖
├── .gitignore                      # 🚫 Git 忽略文件
└── README.md                       # 📖 项目说明

📋 已完成的工作

文档系统

  • README.md - 项目介绍和快速开始
  • 架构设计.md - 完整的技术架构设计
  • 插件开发.md - 详细的插件开发指南
  • API文档.md - 完整的 API 接口文档
  • 快速开始.md - 安装和运行教程
  • 项目概览.md - 项目总览(本文件)

配置文件

  • main_config.toml - 主配置文件模板
  • requirements.txt - Python 依赖列表
  • .gitignore - Git 忽略规则

🚧 待开发模块

第一阶段:核心框架(优先级:高)

WechatHook/                         # Hook 层实现
├── __init__.py
├── loader.py                       # NoveLoader DLL 封装
├── client.py                       # WechatHookClient API 封装
├── message_types.py                # 消息类型映射
└── callbacks.py                    # 回调处理器

任务清单:

  • 实现 NoveLoader 类(基于 python_demo.py
  • 实现 WechatHookClient 类(封装所有 API
  • 定义消息类型映射表
  • 实现回调处理系统

第二阶段Bot 核心(优先级:高)

utils/                              # 工具类(复用 XYBot
├── __init__.py
├── plugin_base.py                  # ✅ 从 XYBot 复制
├── plugin_manager.py               # ✅ 从 XYBot 复制
├── event_manager.py                # ✅ 从 XYBot 复制
├── decorators.py                   # ✅ 从 XYBot 复制
├── singleton.py                    # ✅ 从 XYBot 复制
└── hookbot.py                      # ⚠️ 新实现(类似 xybot.py

bot.py                              # 主入口(简化版)

任务清单:

  • 从 XYBot 复制 utils/ 下的文件
  • 实现 HookBot 类(消息处理核心)
  • 实现 bot.py 主入口
  • 适配消息格式(统一为 XYBot 格式)

第三阶段:数据库(优先级:中)

database/                           # 数据库(复用 XYBot
├── __init__.py
├── XYBotDB.py                      # ✅ 从 XYBot 复制
├── keyvalDB.py                     # ✅ 从 XYBot 复制
└── messsagDB.py                    # ✅ 从 XYBot 复制

任务清单:

  • 从 XYBot 复制数据库文件
  • 修改数据库名称xybot.db → hookbot.db
  • 测试数据库功能

第四阶段:插件系统(优先级:中)

plugins/                            # 插件目录
├── ExamplePlugin/                  # 示例插件
│   ├── __init__.py
│   ├── main.py
│   └── config.toml
└── Menu/                           # 菜单插件(从 XYBot 移植)
    ├── __init__.py
    ├── main.py
    └── config.toml

任务清单:

  • 创建 ExamplePlugin 示例插件
  • 从 XYBot 移植 Menu 插件
  • 测试插件兼容性
  • 根据需要移植更多插件

第五阶段WebUI优先级可选

WebUI/                              # Web 管理界面(复用 XYBot
├── __init__.py
├── config.py
├── routes/                         # 路由
├── services/                       # 服务层
├── templates/                      # 模板
└── static/                         # 静态资源

app.py                              # WebUI 入口

任务清单:

  • 从 XYBot 复制 WebUI 代码
  • 适配 WechatHook API
  • 实现 app.py 入口
  • 测试 WebUI 功能

第六阶段:辅助功能(优先级:低)

libs/                               # DLL 文件目录
├── Loader.dll                      # 从个微大客户版复制
└── Helper.dll                      # 从个微大客户版复制

logs/                               # 日志目录(自动创建)
resources/                          # 资源目录(自动创建)

任务清单:

  • 准备 DLL 文件
  • 实现日志系统
  • 实现资源管理

📊 开发进度

阶段 模块 状态 进度
0 文档系统 完成 100%
1 WechatHook 层 🚧 待开发 0%
2 Bot 核心层 🚧 待开发 0%
3 数据库 🚧 待开发 0%
4 插件系统 🚧 待开发 0%
5 WebUI 🚧 待开发 0%
6 辅助功能 🚧 待开发 0%

总体进度: 15% (文档完成)

🎯 下一步行动

立即开始(推荐顺序)

  1. 准备 DLL 文件

    • 从个微大客户版复制 Loader.dllHelper.dlllibs/ 目录
  2. 实现 WechatHook 层

    • 参考 个微大客户版/python4.1.2.17Demo/python_demo.py
    • 实现 WechatHook/loader.pyNoveLoader 类)
    • 实现 WechatHook/client.pyWechatHookClient 类)
  3. 复用 XYBot 代码

    • 复制 XYBotV2/utils/WechatHookBot/utils/
    • 复制 XYBotV2/database/WechatHookBot/database/
  4. 实现 Bot 核心

    • 参考 XYBotV2/utils/xybot.py 实现 utils/hookbot.py
    • 实现 bot.py 主入口
  5. 测试基础功能

    • 创建简单的测试插件
    • 测试消息收发
    • 验证插件系统

📚 参考资料

内部文档

参考项目

  • XYBotV2/ - 插件系统、事件管理、数据库
  • 个微大客户版/python4.1.2.17Demo/python_demo.py - DLL 调用示例
  • 个微大客户版/API/ - API 接口文档

💡 开发建议

代码复用策略

  • 完全复用utils/(插件系统、事件管理、装饰器)
  • 完全复用database/(数据库层)
  • ⚠️ 参考实现hookbot.py参考 xybot.py但需适配
  • 🆕 全新实现WechatHook/Hook 层封装)

开发优先级

  1. 核心功能优先:先实现消息收发和插件系统
  2. 逐步完善:基础功能稳定后再添加 WebUI
  3. 测试驱动:每个模块完成后立即测试

注意事项

  • 使用 32位 Python 开发和测试
  • 保持与 XYBot 插件的兼容性
  • 注意消息格式的统一转换
  • 做好错误处理和日志记录

🔗 相关链接

  • XYBotV2 项目D:\project\shrobot\XYBotV2\
  • 个微大客户版D:\project\shrobot\个微大客户版\
  • 当前项目D:\project\shrobot\WechatHookBot\

📝 更新日志

2025-01-XX

  • 创建项目目录结构
  • 完成所有文档编写
  • 创建配置文件模板
  • 🚧 准备开始代码实现

项目状态: 🚧 文档完成,代码开发中

预计完成时间: 2-3 天(基础框架)

当前任务: 实现 WechatHook 层