- 新增 messageStore.js 消息存储模块,支持自动保存所有收发消息 - 修改 main.js,在消息转发时自动记录到本地存储 - 修改 preload.js,暴露消息管理 IPC API - 修改 App.js,添加消息历史查看界面 - 统计信息面板(总数/接收/发送/会话数) - 会话列表和消息详情 - 搜索、过滤、分页功能 - 导出 JSON 和清空历史 - 新增完整文档(MESSAGE_HISTORY.md 等) - 新增测试脚本 test-message-history.js 版本:v1.0.1
181 lines
4.3 KiB
Markdown
181 lines
4.3 KiB
Markdown
# 构建和运行指南
|
||
|
||
## 快速开始
|
||
|
||
### 1. 安装依赖
|
||
|
||
```bash
|
||
cd ~/.openclaw/workspace/wecome-openclaw-client
|
||
|
||
# 安装主项目依赖
|
||
npm install
|
||
|
||
# 安装渲染进程依赖
|
||
cd renderer
|
||
npm install
|
||
cd ..
|
||
```
|
||
|
||
### 2. 开发模式运行
|
||
|
||
```bash
|
||
npm start
|
||
```
|
||
|
||
应用会自动打开,支持热重载。
|
||
|
||
### 3. 测试消息历史功能
|
||
|
||
```bash
|
||
node test-message-history.js
|
||
```
|
||
|
||
## 构建发布版本
|
||
|
||
### 构建所有平台
|
||
|
||
```bash
|
||
npm run build
|
||
```
|
||
|
||
### 仅构建特定平台
|
||
|
||
```bash
|
||
# Windows
|
||
npm run dist:win
|
||
|
||
# macOS
|
||
npm run dist:mac
|
||
|
||
# Linux
|
||
npm run dist:linux
|
||
```
|
||
|
||
构建产物在 `dist/` 目录。
|
||
|
||
## 功能验证
|
||
|
||
### 1. 启动应用后,检查以下内容:
|
||
|
||
- ✅ OpenClaw Gateway 配置区域正常显示
|
||
- ✅ 企业微信机器人配置区域正常显示
|
||
- ✅ 右上角有 **💬 消息历史** 按钮
|
||
- ✅ 实时日志区域正常显示
|
||
|
||
### 2. 测试消息历史功能:
|
||
|
||
1. 点击 **💬 消息历史** 按钮
|
||
2. 查看统计信息面板(显示总消息数、接收数、发送数、会话数)
|
||
3. 查看左侧会话列表
|
||
4. 查看右侧消息列表
|
||
5. 测试搜索功能
|
||
6. 测试过滤功能
|
||
7. 测试分页功能
|
||
|
||
### 3. 测试消息保存:
|
||
|
||
1. 在企业微信中发送一条消息
|
||
2. 等待 OpenClaw 回复
|
||
3. 打开消息历史,查看是否保存了两条消息
|
||
4. 验证消息内容、时间、方向是否正确
|
||
|
||
## 配置企业微信机器人
|
||
|
||
1. 登录 [企业微信管理后台](https://work.weixin.qq.com/)
|
||
2. 进入「应用管理」->「智能机器人」
|
||
3. 创建或选择机器人,开启「API 模式」并选择「长连接」
|
||
4. 获取 BotID 和 Secret
|
||
5. 在客户端中点击「+ 添加机器人」
|
||
6. 填写 BotID、Secret 和名称
|
||
7. 点击「连接」
|
||
|
||
## 配置 OpenClaw Gateway
|
||
|
||
1. 确保 OpenClaw Gateway 已启动:
|
||
```bash
|
||
openclaw gateway status
|
||
```
|
||
|
||
2. 在客户端中配置 Gateway 地址:
|
||
- 默认:`ws://localhost:18789`
|
||
- 远程:`wss://your-server.com`
|
||
|
||
3. 如果启用了 Token 认证,填写 Token
|
||
|
||
4. 点击「连接 OpenClaw」
|
||
|
||
## 常见问题
|
||
|
||
### Q: 应用启动失败?
|
||
A: 检查 Node.js 版本(建议 v18+),重新安装依赖:
|
||
```bash
|
||
rm -rf node_modules renderer/node_modules
|
||
npm install
|
||
cd renderer && npm install && cd ..
|
||
```
|
||
|
||
### Q: 消息历史按钮点击无反应?
|
||
A: 打开开发者工具(Ctrl+Shift+I 或 Cmd+Option+I),查看 Console 是否有错误信息。
|
||
|
||
### Q: 消息没有保存?
|
||
A: 检查:
|
||
1. OpenClaw 是否已连接
|
||
2. 企业微信机器人是否已连接
|
||
3. 查看实时日志,确认消息是否正常转发
|
||
4. 检查存储目录权限:`~/.config/wecome-openclaw-client/messages/`
|
||
|
||
### Q: 导出 JSON 失败?
|
||
A: 确保浏览器允许下载文件,或检查是否有足够磁盘空间。
|
||
|
||
### Q: 搜索功能不工作?
|
||
A: 确保输入了搜索关键词并按回车或点击搜索按钮。
|
||
|
||
## 目录结构
|
||
|
||
```
|
||
wecome-openclaw-client/
|
||
├── electron/ # Electron 主进程
|
||
│ ├── main.js # 主进程入口(已修改)
|
||
│ ├── preload.js # 预加载脚本(已修改)
|
||
│ └── messageStore.js # 消息存储模块(新增)
|
||
├── renderer/ # React 渲染进程
|
||
│ └── src/
|
||
│ ├── App.js # 主组件(已修改)
|
||
│ ├── index.js # 入口文件
|
||
│ └── index.css # 样式
|
||
├── resources/ # 应用资源
|
||
├── test-message-history.js # 测试脚本(新增)
|
||
├── MESSAGE_HISTORY.md # 功能说明(新增)
|
||
├── CHANGELOG_MESSAGE_HISTORY.md # 更新日志(新增)
|
||
├── BUILD_AND_RUN.md # 本文档(新增)
|
||
├── package.json
|
||
└── README.md
|
||
```
|
||
|
||
## 技术栈
|
||
|
||
- **Electron**: 28.0.0
|
||
- **React**: 18.2.0
|
||
- **@wecom/aibot-node-sdk**: 企业微信 SDK
|
||
- **ws**: WebSocket 客户端
|
||
- **electron-store**: 配置存储
|
||
|
||
## 系统要求
|
||
|
||
- **操作系统**: Windows 10+, macOS 10.15+, Linux (Ubuntu 18.04+)
|
||
- **Node.js**: v18.0.0+
|
||
- **内存**: 最少 512MB
|
||
- **磁盘**: 最少 200MB(不含消息存储)
|
||
|
||
## 下一步
|
||
|
||
应用启动并配置完成后:
|
||
|
||
1. ✅ 配置企业微信机器人
|
||
2. ✅ 连接 OpenClaw Gateway
|
||
3. ✅ 测试消息收发
|
||
4. ✅ 查看消息历史
|
||
5. ✅ 导出备份数据
|
||
|
||
祝你使用愉快!🎉
|