调整98堂发送的内容,先发文本

This commit is contained in:
liuwei
2025-06-03 17:09:14 +08:00
parent 358ecddc48
commit c320fa5758
4 changed files with 143 additions and 473 deletions

185
README.MD
View File

@@ -1,6 +1,6 @@
# A-BOT 智能助手
A-BOT是一个功能丰富的微信机器人助手集成了多种实用功能包括AI聊天、群智闯关、积分系统、新闻推送等。
A-BOT是一个功能丰富的微信机器人助手集成了多种实用功能包括AI聊天、群智闯关、积分系统、新闻推送等。支持多种AI模型集成提供消息自动回复、群管理等功能。
## 📋 功能清单
@@ -23,7 +23,8 @@ A-BOT是一个功能丰富的微信机器人助手集成了多种实用功能
### 4. AI聊天
- 智能对话
- 多模型支持(支持多种AI模型
- 多模型支持(Claude、DeepSeek、豆包等
- 自定义提示词模板
### 5. 媒体内容
- 秀人图片
@@ -36,25 +37,29 @@ A-BOT是一个功能丰富的微信机器人助手集成了多种实用功能
- 群自动邀请
- 插件管理系统
- 消息智能总结
- 数据库消息存档
### 7. 其他功能
### 7. 系统功能
- 每日签到系统
- 系统更新
- 视频分享
- 邮件通知系统
- 系统监控集成
## 🚀 安装说明
### 环境要求
- Python 3.8+
- Python 3.10+
- MySQL 数据库
- Redis 服务
- Git用于系统更新
- 支持的操作系统Windows/Linux/MacOS
### 依赖安装
```bash
# 克隆项目
git clone https://github.com/your-username/WeChatRobot.git
cd WeChatRobot
git clone https://github.com/your-username/abot.git
cd abot
# 创建虚拟环境
python -m venv .venv
@@ -94,7 +99,7 @@ pip install -r requirements.txt
- 抖音解析服务:用于视频解析功能
### 系统依赖
- Python 3.8+
- Python 3.10+
- Git用于系统更新
- 文件系统存储空间:用于存储媒体文件
- 网络代理支持(可选):用于访问特定服务
@@ -181,51 +186,143 @@ pip install -r requirements.txt
## ⚙️ 配置说明
1. 配置文件位于 `config.yaml`
- 数据库配置
- API密钥配置
- 插件开关设置
- 代理设置
### 1. 配置文件
配置文件位于 `config.yaml`,包含以下主要配置项:
2. 数据库配置在 `configuration.py`
- MySQL连接信息
- Redis连接信息
- 其他数据库设置
#### AI模型配置
```yaml
claude:
key: "your-api-key"
api: "http://127.0.0.1:8080/v1/chat/completions"
model: "windsurf/gpt4o"
prompt: "your-prompt-template"
3. 日志文件:
- wx_debug.log调试日志
- wx_info.log信息日志
- wx_error.log错误日志
deepseek:
key: "your-api-key"
api: "https://api.deepseek.com/chat/completions"
model: "deepseek-chat"
prompt: "your-prompt-template"
doubao:
key: "your-api-key"
api: "https://ark.cn-beijing.volces.com/api/v3/chat/completions"
model: "doubao-1-5-lite-32k-250115"
prompt: "your-prompt-template"
```
#### 数据库配置
```yaml
db_config:
pool_name: "wechat_boot_pool"
pool_size: 10
host: "your-db-host"
user: "your-db-user"
password: "your-db-password"
database: "message_archive"
charset: "utf8mb4"
```
#### Redis配置
```yaml
redis_config:
host: "your-redis-host"
port: 6379
db: 0
decode_responses: true
```
### 2. 插件配置
#### AI聊天插件 (dify)
```yaml
Dify:
enable: true
commands: ["ai", "dify", "聊天", "AI"]
command-tip: "聊天 请求内容"
api-key: "your-dify-api-key"
base-url: "your-dify-base-url"
```
#### 音乐插件 (music)
```yaml
Music:
enable: true
command: ["点歌", "音乐"]
command-format: "点歌 歌曲名"
```
#### 群智闯关插件 (game_task)
```yaml
GameTask:
enable: true
command: ["/s", "/t", "/a", "/r", "/l", "/h"]
command-format: "游戏命令格式说明"
```
## 📁 项目结构
```
abot/
├── admin/ # 管理后台相关代码
├── base/ # 基础功能模块
├── db/ # 数据库相关代码
├── plugins/ # 插件目录
├── resource/ # 资源文件
├── static/ # 静态文件
├── utils/ # 工具函数
├── wechat_ipad/ # 微信相关核心代码
├── config.yaml # 配置文件
├── main.py # 主程序入口
├── requirements.txt # 依赖列表
└── restart.sh # 重启脚本
```
## 🔧 开发说明
项目结构:
```
├── admin/ # 管理后台
├── base/ # 基础功能
├── event_system/ # 事件系统
├── plugins/ # 插件目录
├── utils/ # 工具函数
├── wechat_ipad/ # 微信接口
├── main.py # 主程序
└── robot.py # 机器人核心
```
### 插件开发
1. 在 `plugins` 目录下创建新的插件目录
2. 实现 `MessagePluginInterface` 接口
3. 在 `config.toml` 中添加插件配置
4. 在插件管理器中注册插件 -启动时自动注册
4. 在插件管理器中注册插件
## 📝 注意事项
### 开发规范
- 遵循PEP 8编码规范
- 添加适当的注释
- 编写单元测试
- 更新文档
1. 首次使用需要配置相关API密钥
2. 部分功能需要管理员权限
3. 建议定期备份数据库
4. 请遵守相关法律法规使用
5. 注意API调用频率限制
6. 定期检查日志文件
7. 保持系统更新
## ⚠️ 注意事项
1. 确保所有API密钥配置正确
2. 数据库和Redis服务必须正常运行
3. 建议使用虚拟环境运行项目
4. 定期检查日志文件wx_debug.log, wx_info.log, wx_error.log
5. 部分功能需要消耗积分
6. 部分功能需要管理员权限
7. 建议定期备份数据库
8. 请遵守相关法律法规使用
9. 注意API调用频率限制
## ❓ 常见问题
1. 依赖安装问题
```bash
python -m pip install --upgrade pip
```
2. 数据库连接问题
- 检查数据库服务是否运行
- 验证配置信息是否正确
- 确认数据库用户权限是否足够
3. Redis连接问题
- 检查Redis服务是否运行
- 验证配置信息是否正确
- 检查Redis服务器防火墙设置
4. API调用问题
- 确认API密钥是否正确
- 检查API服务是否可用
- 验证网络连接是否正常
## 🔄 更新日志
@@ -242,12 +339,6 @@ pip install -r requirements.txt
4. 推送到分支
5. 创建 Pull Request
### 开发规范
- 遵循PEP 8编码规范
- 添加适当的注释
- 编写单元测试
- 更新文档
## 📄 许可证
本项目采用 MIT 许可证,详见 LICENSE 文件。

View File

@@ -1,262 +0,0 @@
# WeChatRobot
一个基于Python的微信机器人项目支持多种AI模型集成提供消息自动回复、群管理等功能。
## 功能特点
- 支持多种AI模型集成Claude、DeepSeek、豆包等
- 自动消息回复和处理
- 群管理功能
- 数据库消息存档
- 邮件通知系统
- 系统监控集成
## 系统要求
- Python 3.8+
- MySQL 数据库
- Redis 服务器
- 支持的操作系统Windows/Linux/MacOS
## 环境配置
1. 克隆项目到本地:
```bash
git clone [项目地址]
cd WeChatRobot
```
2. 创建并激活虚拟环境:
```bash
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/MacOS
source .venv/bin/activate
```
3. 安装依赖:
```bash
pip install -r requirements.txt
```
4. 配置数据库:
- 确保MySQL服务已启动
- 创建数据库message_archive
- 配置数据库连接信息config.yaml
5. 配置Redis
- 确保Redis服务已启动
- 配置Redis连接信息config.yaml
## 配置文件说明
`config.yaml` 中配置以下内容:
### 1. AI模型配置
#### Claude AI
```yaml
claude:
key: "your-api-key"
api: "http://127.0.0.1:8080/v1/chat/completions"
model: "windsurf/gpt4o"
prompt: "your-prompt-template"
```
#### DeepSeek AI
```yaml
deepseek:
key: "your-api-key"
api: "https://api.deepseek.com/chat/completions"
model: "deepseek-chat"
prompt: "your-prompt-template"
```
#### 豆包AI
```yaml
doubao:
key: "your-api-key"
api: "https://ark.cn-beijing.volces.com/api/v3/chat/completions"
model: "doubao-1-5-lite-32k-250115"
prompt: "your-prompt-template"
```
### 2. 数据库配置
```yaml
db_config:
pool_name: "wechat_boot_pool"
pool_size: 10
host: "your-db-host"
user: "your-db-user"
password: "your-db-password"
database: "message_archive"
charset: "utf8mb4"
use_unicode: true
get_warnings: true
pool_reset_session: true
```
### 3. Redis配置
```yaml
redis_config:
host: "your-redis-host"
port: 6379
db: 0
decode_responses: true
```
### 4. 邮件配置
```yaml
email_config:
smtp_server: "smtp.163.com"
smtp_port: 465
sender_email: "your-email@163.com"
sender_password: "your-email-password"
alert_recipient: "alert-recipient@example.com"
```
### 5. 系统监控配置
```yaml
glances:
host: "your-glances-host"
port: 61208
```
## 插件配置说明
### 1. AI聊天插件 (dify)
```yaml
Dify:
enable: true
commands: ["ai", "dify", "聊天", "AI"]
command-tip: "聊天 请求内容"
api-key: "your-dify-api-key"
base-url: "your-dify-base-url"
price: 0
admin_ignore: false
whitelist_ignore: false
http-proxy: ""
```
### 2. 音乐插件 (music)
```yaml
Music:
enable: true
command: ["点歌", "音乐"]
command-format: "点歌 歌曲名"
```
### 3. 视频插件 (video_man)
```yaml
VideoMan:
enable: true
command: ["猛男", "肌肉", "帅哥"]
command-format: "猛男"
```
### 4. 群智闯关插件 (game_task)
```yaml
GameTask:
enable: true
command: ["/s", "/t", "/a", "/r", "/l", "/h"]
command-format: "游戏命令格式说明"
```
### 5. 积分交易插件 (point_trade)
```yaml
PointTrade:
enable: true
command: ["积分转账", "我的积分", "积分排行", "打劫", "保释"]
command-format: "积分相关命令格式"
```
### 6. 全球新闻插件 (global_news)
```yaml
GlobalNews:
enable: true
command: ["全球新闻", "国际新闻", "环球新闻", "政经新闻"]
command-format: "全球新闻 - 获取最新的全球政治经济新闻"
```
### 7. 自动加群插件 (group_auto_invite)
```yaml
GroupAutoInvite:
enable: true
command: ["#加群配置|", "#加群"]
command-format: "加群命令格式说明"
```
### 8. 系统更新插件 (system_updater)
```yaml
SystemUpdater:
enable: true
commands: ["更新系统", "系统更新"]
wait_time: 5
admin_wxids: ["admin-wxid1", "admin-wxid2"]
```
## 启动服务
1. 启动主程序:
```bash
python main.py
```
2. 使用重启脚本Linux/MacOS
```bash
./restart.sh
```
## 目录结构
```
WeChatRobot/
├── admin/ # 管理后台相关代码
├── base/ # 基础功能模块
├── db/ # 数据库相关代码
├── plugins/ # 插件目录
├── resource/ # 资源文件
├── static/ # 静态文件
├── utils/ # 工具函数
├── wechat_ipad/ # 微信相关核心代码
├── config.yaml # 配置文件
├── main.py # 主程序入口
├── requirements.txt # 依赖列表
└── restart.sh # 重启脚本
```
## 注意事项
1. 确保所有API密钥配置正确
2. 数据库和Redis服务必须正常运行
3. 建议使用虚拟环境运行项目
4. 定期检查日志文件wx_debug.log, wx_info.log, wx_error.log
5. 部分功能需要消耗积分
6. 部分功能需要管理员权限
## 常见问题
1. 如果遇到依赖安装问题请确保pip版本最新
```bash
python -m pip install --upgrade pip
```
2. 如果遇到数据库连接问题,检查:
- 数据库服务是否运行
- 配置信息是否正确
- 数据库用户权限是否足够
3. 如果遇到Redis连接问题检查
- Redis服务是否运行
- 配置信息是否正确
- Redis服务器防火墙设置
4. 如果遇到API调用问题检查
- API密钥是否正确
- API服务是否可用
- 网络连接是否正常
## 许可证
本项目采用 MIT 许可证,详见 [LICENSE](LICENSE) 文件。

View File

@@ -1,164 +0,0 @@
# WeChatRobot 使用手册
## 目录
1. [基础命令](#基础命令)
2. [AI聊天功能](#ai聊天功能)
3. [群管理功能](#群管理功能)
4. [游戏功能](#游戏功能)
5. [媒体功能](#媒体功能)
6. [系统功能](#系统功能)
7. [插件管理](#插件管理)
## 基础命令
### 帮助命令
- `帮助` - 显示所有可用命令
- `帮助 [命令名]` - 显示特定命令的详细说明
## AI聊天功能
### Dify AI聊天
- `ai [问题]` - 使用AI回答问题
- `dify [问题]` - 使用AI回答问题
- `聊天 [问题]` - 使用AI回答问题
- `AI [问题]` - 使用AI回答问题
- 在群聊中@机器人也可以触发AI对话
### AI自动对话
- 在群聊中自动介入对话
- 支持上下文理解
- 自动识别需要AI介入的场景
## 群管理功能
### 群设置
- `群设置` - 显示当前群设置
- `群设置 修改 [设置项] [值]` - 修改群设置
- `群设置 重置` - 重置群设置为默认值
### 自动加群
- `#加群配置|add key group_id` - 添加群组ID
- `#加群配置|del key group_id` - 删除群组ID
- `#加群配置|get key` - 获取所有群组ID
- `#加群配置|get_first key` - 获取第一个群组ID
- `#加群 key` - 请求加入关键词对应的群聊
### 跨群聊天
- 自动将多个微信群组合成虚拟聊天组
- 实现群组间消息的自动转发
## 游戏功能
### 群智闯关
- `/s` - 加入答题游戏
- `/t` - 获取新问题
- `/a [任务ID] [答案]` - 回答问题
- `/r` - 查看排行榜
- `/l` - 查看活跃问题
- `/h` - 查看未解决问题
### 猜歌名游戏
- `猜歌名 [歌手名]` - 指定歌手猜歌名
- `猜歌名 [歌名]` - 直接猜歌名
## 媒体功能
### 音乐功能
- `点歌 [歌名]` - 搜索并发送音乐
- `音乐 [歌名]` - 搜索并发送音乐
### 视频功能
- `猛男` - 获取猛男视频
- `肌肉` - 获取肌肉视频
- `帅哥` - 获取帅哥视频
### 图片功能
- `秀人` - 获取秀人网图片
- `美腿` - 获取美腿图片
### 抖音解析
- 直接发送抖音链接可自动解析
## 系统功能
### 系统更新
- `更新系统` - 更新系统
- `系统更新` - 更新系统
- 支持自定义等待时间:`更新系统 [秒数]`
### 积分系统
- `我的积分` - 查询积分
- `积分排行` - 查看排行榜
- `打劫 @用户` - 打劫积分
- `保释 @用户` - 保释用户
### 全球新闻
- `全球新闻` - 获取国际新闻
- `国际新闻` - 获取国际新闻
- `环球新闻` - 获取环球新闻
- `政经新闻` - 获取政经新闻
## 插件管理
### 插件操作
- `插件 列表` - 显示所有已安装的插件
- `插件 启用 [插件名]` - 启用指定插件
- `插件 禁用 [插件名]` - 禁用指定插件
- `插件 重载 [插件名]` - 重新加载插件
- `插件 卸载 [插件名]` - 卸载插件
- `插件 加载 [插件名]` - 加载插件
- `插件 信息 [插件名]` - 查看插件详情
## 注意事项
1. 所有命令都可以在群聊或私聊中使用
2. 部分命令需要管理员权限
3. 命令不区分大小写
4. 使用 `@机器人` 可以确保命令被正确识别
5. 部分功能可能需要相应的API密钥配置
6. 部分功能需要消耗积分
## 常见问题
1. 命令无响应
- 检查机器人是否在线
- 确认命令格式是否正确
- 验证是否有使用权限
- 检查积分是否足够
2. 功能无法使用
- 检查相关插件是否已启用
- 确认API密钥是否配置正确
- 查看系统日志了解详细错误信息
- 检查群权限设置
3. 响应速度慢
- 检查网络连接状态
- 确认服务器负载情况
- 查看系统资源使用情况
- 检查API调用限制
## 联系支持
如果遇到问题或需要帮助,请通过以下方式联系:
1. 提交Issue到项目仓库
2. 发送邮件到bovine.liu@gmail.com
3. 在项目讨论区发帖
## 更新日志
### v1.0.0
- 初始版本发布
- 基础功能实现
- 插件系统支持
### v1.1.0
- 新增多个AI模型支持
- 优化群管理功能
- 改进媒体处理功能
### v1.2.0
- 新增系统监控功能
- 优化插件管理系统
- 改进错误处理机制

View File

@@ -64,6 +64,11 @@
- `点歌 歌曲名` - 想听什么歌?直接点播
- 例如:`点歌 周杰伦 稻香`
## 🎵 猜歌名游戏
- `猜歌名 [歌手名]` - 指定歌手猜歌名
- `猜歌名 [歌名]` - 直接猜歌名
- `猜歌名 下一首` - 直接跳过当前题目
## 📝 每日签到
**使用方法:**