332 lines
6.6 KiB
Markdown
332 lines
6.6 KiB
Markdown
# A-BOT 智能助手
|
||
|
||
A-BOT是一个功能丰富的微信机器人助手,集成了多种实用功能,包括AI聊天、群智闯关、积分系统、新闻推送等。支持多种AI模型集成,提供消息自动回复、群管理等功能。
|
||
|
||
## 📋 功能清单
|
||
|
||
### 1. 群智闯关
|
||
|
||
- 答题游戏系统
|
||
- 积分排行榜
|
||
- 任务管理
|
||
- 实时答题反馈
|
||
|
||
### 2. 积分交易系统
|
||
|
||
- 积分转账
|
||
- 积分查询
|
||
- 积分排行榜
|
||
- 打劫系统
|
||
- 保释功能
|
||
|
||
### 3. 全球快讯
|
||
|
||
- 国际政经新闻推送
|
||
- 实时新闻更新
|
||
|
||
### 4. AI聊天
|
||
|
||
- 智能对话
|
||
- 多模型支持(Claude、DeepSeek、豆包等)
|
||
- 自定义提示词模板
|
||
|
||
### 5. 媒体内容
|
||
|
||
- 秀人图片
|
||
- 猛男视频
|
||
- 美腿图片
|
||
- 音乐点播
|
||
- 抖音视频解析
|
||
|
||
### 6. 群管理功能
|
||
|
||
- 群自动邀请
|
||
- 插件管理系统
|
||
- 消息智能总结
|
||
- 数据库消息存档
|
||
|
||
### 7. 系统功能
|
||
|
||
- 每日签到系统
|
||
- 系统更新
|
||
- 视频分享
|
||
- 邮件通知系统
|
||
- 系统监控集成
|
||
|
||
## 🚀 安装说明
|
||
|
||
### 环境要求
|
||
|
||
- Python 3.10+
|
||
- MySQL 数据库
|
||
- Redis 服务
|
||
- Git(用于系统更新)
|
||
- 支持的操作系统:Windows/Linux/MacOS
|
||
|
||
### server安装
|
||
|
||
- 复制wechat_ipad/server/下面的所有内容到你的服务器
|
||
- 修改conf下的文件[app.conf](wechat_ipad%2Fserver%2Fconf%2Fapp.conf)
|
||
- 将redis链接改成自己的redis配置
|
||
|
||
```
|
||
redislink = 192.168.2.40:6379
|
||
redispass = ""
|
||
redisdbnum = 7
|
||
```
|
||
|
||
- 配置完成之后,运行server
|
||
|
||
```bash
|
||
sudo nohup ./ipad859go > /tmp/logger.log 2>&1 &
|
||
```
|
||
|
||
### 依赖安装
|
||
|
||
```bash
|
||
# 克隆项目
|
||
git clone https://github.com/your-username/abot.git
|
||
cd abot
|
||
|
||
# 创建虚拟环境
|
||
python -m venv .venv
|
||
source .venv/bin/activate # Linux/Mac
|
||
# 或
|
||
.venv\Scripts\activate # Windows
|
||
|
||
# 安装依赖
|
||
pip install -r requirements.txt
|
||
# 特别安装,pip 版本依赖不准确,需要单独安装
|
||
pip install pysilk-mod
|
||
```
|
||
|
||
- 字体包安装,用来支持图片合成时字体,emoji等显示
|
||
|
||
```bash
|
||
sudo apt-get install -y fonts-noto-cjk fonts-noto-cjk-extra
|
||
sudo apt-get install -y fonts-noto-color-emoji fonts-noto-cjk fonts-wqy-microhei
|
||
```
|
||
|
||
### 主要依赖包
|
||
|
||
- lxml~=5.3.0
|
||
- openai>1.0.0
|
||
- pandas~=2.2.3
|
||
- pyyaml~=6.0.2
|
||
- requests~=2.32.3
|
||
- schedule~=1.2.2
|
||
- sparkdesk-api==1.3.0
|
||
- pillow~=11.0.0
|
||
- Flask~=3.1.0
|
||
- fastapi~=0.115.12
|
||
- uvicorn~=0.34.2
|
||
- 更多依赖请查看 requirements.txt
|
||
|
||
## ⚙️ 配置说明
|
||
|
||
### 1. 配置文件
|
||
|
||
配置文件位于 `config.yaml`,包含以下主要配置项:
|
||
|
||
#### 数据库配置
|
||
|
||
```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: "游戏命令格式说明"
|
||
```
|
||
|
||
## 📖 使用说明
|
||
|
||
### 基础命令
|
||
|
||
1. 群智闯关
|
||
- `/s` - 加入答题游戏
|
||
- `/t` - 获取新问题
|
||
- `/a 任务ID 答案` - 回答问题
|
||
- `/r` - 查看排行榜
|
||
- `/l` - 查看活跃问题
|
||
- `/h` - 查看未解决问题
|
||
|
||
2. 积分系统
|
||
- `积分转账 积分数 @用户` - 转账积分
|
||
- `我的积分` - 查询积分
|
||
- `积分排行` - 查看排行榜
|
||
- `打劫 @用户` - 打劫积分
|
||
- `保释 @用户` - 保释用户
|
||
|
||
3. 新闻功能
|
||
- `全球新闻` - 获取国际新闻
|
||
- 支持:`国际新闻`、`环球新闻`、`政经新闻`
|
||
|
||
4. AI聊天
|
||
- `聊天 问题` - 与AI对话
|
||
- 支持:`ai`、`dify`、`AI` 开头
|
||
|
||
5. 插件管理
|
||
- `插件 列表` - 查看插件
|
||
- `插件 启用 [插件名]` - 启用插件
|
||
- `插件 禁用 [插件名]` - 禁用插件
|
||
- `插件 信息 [插件名]` - 查看插件信息
|
||
|
||
### 媒体功能
|
||
|
||
- `图来`/`秀人` - 获取图片
|
||
- `猛男` - 获取视频
|
||
- `美腿`/`腿来` - 获取美腿图片
|
||
- `点歌 歌曲名` - 点播音乐
|
||
- 直接发送抖音链接可自动解析
|
||
|
||
### 系统功能
|
||
|
||
- `签到` - 每日签到
|
||
- `更新系统` - 系统更新(管理员)
|
||
- `#总结` - 消息总结
|
||
|
||
## 📁 项目结构
|
||
|
||
```
|
||
abot/
|
||
├── admin/ # 管理后台相关代码
|
||
├── base/ # 基础功能模块
|
||
├── db/ # 数据库相关代码
|
||
├── plugins/ # 插件目录
|
||
├── resource/ # 资源文件
|
||
├── static/ # 静态文件
|
||
├── utils/ # 工具函数
|
||
├── wechat_ipad/ # 微信相关核心代码
|
||
├── config.yaml # 配置文件
|
||
├── main.py # 主程序入口
|
||
├── requirements.txt # 依赖列表
|
||
└── restart.sh # 重启脚本
|
||
```
|
||
|
||
## 🔧 开发说明
|
||
|
||
### 插件开发
|
||
|
||
1. 在 `plugins` 目录下创建新的插件目录
|
||
2. 实现 `MessagePluginInterface` 接口
|
||
3. 在 `config.toml` 中添加插件配置
|
||
4. 在插件管理器中注册插件
|
||
|
||
### 开发规范
|
||
|
||
- 遵循PEP 8编码规范
|
||
- 添加适当的注释
|
||
- 编写单元测试
|
||
- 更新文档
|
||
|
||
## ⚠️ 注意事项
|
||
|
||
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服务是否可用
|
||
- 验证网络连接是否正常
|
||
|
||
## 🔄 更新日志
|
||
|
||
### v1.0.0
|
||
|
||
- 初始版本发布
|
||
- 基础功能实现
|
||
- 插件系统支持
|
||
|
||
## 🤝 贡献指南
|
||
|
||
1. Fork 项目
|
||
2. 创建特性分支
|
||
3. 提交更改
|
||
4. 推送到分支
|
||
5. 创建 Pull Request
|
||
|
||
## 📄 许可证
|
||
|
||
本项目采用 MIT 许可证,详见 LICENSE 文件。
|
||
|
||
## 📞 联系方式
|
||
|
||
- 项目维护者:水牛
|
||
- 邮箱:bovine.liu@gmail.com
|
||
- 项目地址:待发布
|
||
|
||
## 🙏 致谢
|
||
|
||
感谢所有为本项目做出贡献的开发者。 |