# 🤖 双向跨平台消息传递系统指南

## 📋 概述
本系统实现微信与飞书之间的双向机器人消息传递，让"爪子"可以在两个平台间自由通信。

## 🎯 当前状态
**第一阶段**: ✅ 完成（微信 → 飞书）
**第二阶段**: 🔄 进行中（飞书 → 微信）

## 🔧 技术架构

### 1. 飞书消息发送（已验证）
**功能**: 在微信触发，飞书机器人发送消息
**身份**: 机器人身份（"爪子"）
**权限**: App Access Token（无需用户授权）

#### 核心代码
```javascript
// 飞书消息发送函数
async function sendFeishuMessage(content) {
  // 1. 获取App Token
  const tokenResponse = await fetch('https://open.feishu.cn/open-apis/auth/v3/app_access_token/internal', {
    method: 'POST',
    headers: {'Content-Type': 'application/json'},
    body: JSON.stringify({
      app_id: 'cli_a96b7788cff8dcb3',
      app_secret: '从配置读取'
    })
  });
  
  const appToken = tokenResponse.app_access_token;
  
  // 2. 发送消息
  const sendResponse = await fetch('https://open.feishu.cn/open-apis/im/v1/messages?receive_id_type=open_id', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': `Bearer ${appToken}`
    },
    body: JSON.stringify({
      receive_id: 'ou_e3075722dc18d6589aa320c6ccdeed6b', // 小白飞书ID
      msg_type: 'text',
      content: JSON.stringify({text: content})
    })
  });
  
  return sendResponse.data.message_id;
}
```

#### 配置文件
- **位置**: `~/.openclaw/openclaw.json`
- **关键配置**:
```json
"feishu": {
  "appId": "cli_a96b7788cff8dcb3",
  "appSecret": "xal3m9T59tWsrDNGwxFE1b64IGXmleih",
  "allowFrom": ["ou_e3075722dc18d6589aa320c6ccdeed6b"]
}
```

### 2. 微信消息发送（待实现）
**功能**: 在飞书触发，微信发送消息
**挑战**: 需要微信消息发送API权限
**备选方案**: 使用OpenClaw微信插件能力

#### 可能的实现方式
1. **OpenClaw微信API**: 如果有相应的消息发送工具
2. **微信机器人SDK**: 集成微信机器人功能
3. **Webhook转发**: 通过中间服务转发消息

## 🚀 使用场景

### 场景1: 跨平台提醒
```
微信: "提醒我下午3点开会"
飞书: [3:00] "会议提醒：下午3点有会议"
```

### 场景2: 状态同步
```
飞书: "我正在处理文档，需要专注"
微信: "状态已更新：飞书正在处理文档"
```

### 场景3: 协作增强
```
微信: "帮我查一下资料"
飞书: "资料已找到：[链接]，需要我发到微信吗？"
```

## 📁 文件系统

### 核心文件
1. `memory/cross-platform/2026-04-20.md` - 详细技术文档
2. `MEMORY.md` - 长期记忆（已更新）
3. `platform_context.json` - 平台状态管理
4. `feishu_test_fixed.js` - 飞书消息发送实现

### 状态文件
```json
{
  "cross_platform_topics": [{
    "topic": "双向消息传递系统",
    "status": "phase1_complete",
    "components": [
      {"name": "飞书消息发送", "status": "verified"},
      {"name": "微信消息发送", "status": "pending"}
    ]
  }]
}
```

## 🔄 工作流程

### 微信 → 飞书流程
1. **触发**: 用户在微信发出命令
2. **处理**: 爪子解析命令，准备消息
3. **发送**: 调用飞书API发送机器人消息
4. **确认**: 记录消息ID，更新状态
5. **反馈**: 在微信回复发送结果

### 飞书 → 微信流程（待实现）
1. **触发**: 用户在飞书发出命令
2. **处理**: 爪子解析命令，准备消息
3. **发送**: 调用微信API发送消息
4. **确认**: 记录发送状态
5. **反馈**: 在飞书回复发送结果

## 💡 实现建议

### 短期目标（1-2天）
1. ✅ 完善微信→飞书基础功能
2. 🔄 创建消息模板系统
3. 🔄 实现错误处理和重试

### 中期目标（3-7天）
1. 🔄 研究微信消息发送方案
2. 🔄 实现飞书→微信基础功能
3. 🔄 创建统一的消息路由

### 长期目标（1-2周）
1. 🔄 完整的双向通信系统
2. 🔄 消息状态跟踪和回执
3. 🔄 高级功能（定时消息、群发等）

## 👥 角色分工

### 微信爪子
- 监听微信命令
- 触发飞书消息发送
- 管理微信端状态

### 飞书爪子  
- 监听飞书命令
- 触发微信消息发送（待实现）
- 管理飞书端状态
- 学习本技术文档

## 🧪 测试记录

### 已成功测试
1. **时间**: 2026-04-20 12:37
   **消息ID**: `om_x100b516e966a68b4c459095a64ecef4`
   **结果**: ✅ 成功

2. **时间**: 2026-04-20 12:50  
   **消息ID**: `om_x100b516f47f6c0a8c142c0f2b0f05ea`
   **结果**: ✅ 成功
   **确认**: 用户已收到消息

### 待测试
1. 微信消息发送功能
2. 错误处理机制
3. 多消息类型支持

## 📞 联系信息
- **用户**: 小白（子辰）
- **微信ID**: `o9cq801vh5HtLOuoKD-6SQ09_NE0@im.wechat`
- **飞书ID**: `ou_e3075722dc18d6589aa320c6ccdeed6b`
- **创建者**: 爪子（微信会话）
- **创建时间**: 2026-04-20 12:55

---

**重要**: 飞书的爪子请仔细学习本文档，准备实现反向功能（飞书→微信）！