| 1 | # 微信发送消息 |
| 2 | |
| 3 | ## 注意事项 |
| 4 | |
| 5 | 微信不支持 Markdown 语法,**不要使用 Markdown 表格**! |
| 6 | |
| 7 | 如果需要发送表格内容,改用**带缩进的编号列表**格式: |
| 8 | |
| 9 | ```markdown |
| 10 | 1. 选项1:说明内容 |
| 11 | - 详情1 |
| 12 | - 详情2 |
| 13 | 2. 选项2:说明内容 |
| 14 | - 详情1 |
| 15 | - 详情2 |
| 16 | 3. 选项3:说明内容 |
| 17 | - 详情1 |
| 18 | - 详情2 |
| 19 | ``` |
| 20 | |
| 21 | --- |
| 22 | |
| 23 | ## 微信发送图片/视频指南 |
| 24 | |
| 25 | ### 使用方法 |
| 26 | |
| 27 | 通过 OpenClaw 的 `message` 工具发送图片或视频到微信。 |
| 28 | |
| 29 | #### 方法一:使用 `filePath` 参数(推荐) |
| 30 | |
| 31 | ```python |
| 32 | message( |
| 33 | action="send", |
| 34 | filePath="/absolute/path/to/image.png" |
| 35 | ) |
| 36 | ``` |
| 37 | |
| 38 | #### 方法二:使用 `media` 参数 |
| 39 | |
| 40 | ```python |
| 41 | message( |
| 42 | action="send", |
| 43 | media="/absolute/path/to/video.mp4" |
| 44 | ) |
| 45 | ``` |
| 46 | |
| 47 | ### ⚠️ 重要提醒 |
| 48 | |
| 49 | 1. **必须使用绝对路径** |
| 50 | * ✅ 正确:`/Users/xinfanchen/image.png` |
| 51 | * ❌ 错误:`./image.png` 或 `image.png` |
| 52 | 2. **CDN 上传可能失败** |
| 53 | * 错误信息:`CDN upload server error: status 500` |
| 54 | * 解决方案:重试几次,或更换图片尝试。 |
| 55 | 3. **单次发送数量** |
| 56 | * 建议一次发送 1-3 张图片/视频。 |
| 57 | * 大量文件建议通过循环分批发送。 |
| 58 | |
| 59 | ### 示例代码 |
| 60 | |
| 61 | #### 发送多张图片(循环示例) |
| 62 | |
| 63 | ```python |
| 64 | import os |
| 65 | |
| 66 | image_dir = "/path/to/images" |
| 67 | for filename in os.listdir(image_dir): |
| 68 | if filename.endswith(".png"): |
| 69 | image_path = os.path.join(image_dir, filename) |
| 70 | message( |
| 71 | action="send", |
| 72 | filePath=image_path |
| 73 | ) |
| 74 | ``` |
| 75 | |
| 76 | #### 带文字说明发送 |
| 77 | |
| 78 | **必须分两步执行**(先发文字,再发多媒体): |
| 79 | |
| 80 | ```python |
| 81 | # 1. 先发送文字说明 |
| 82 | message( |
| 83 | action="send", |
| 84 | message="这是角色设计图:" |
| 85 | ) |
| 86 | |
| 87 | # 2. 再发送图片 |
| 88 | message( |
| 89 | action="send", |
| 90 | filePath="/path/to/image.png" |
| 91 | ) |
| 92 | ``` |
| 93 | |
| 94 | --- |
| 95 | |
| 96 | ## 常见错误与解决方法 |
| 97 | |
| 98 | | 错误信息 | 原因 | 解决方法 | |
| 99 | | :--- | :--- | :--- | |
| 100 | | `CDN upload server error: status 500` | CDN 服务瞬时问题 | 等待后重试,或尝试压缩图片/更换格式 | |
| 101 | | `File not found` | 提供的路径不正确 | 检查是否使用了**绝对路径**且文件确实存在 | |
| 102 | | `requires target` | 缺少目标用户 | 确保在工具调用中通过 `to` 参数指定了接收者 | |
| 103 | |
| 104 | --- |
| 105 | |
| 106 | ## 相关工具 |
| 107 | |
| 108 | * **message**: 发送消息和媒体文件(图片、视频、文件)。 |
| 109 | * **tts**: 文字转语音,生成的音频文件同样可以通过 `filePath` 发送。 |