← 返回
未分类 Key

元宝派主动推送

主动向元宝派(Yuanbao Pai)群聊和私聊发送消息和文件。独立于 OpenClaw 插件通道,通过 WebSocket 协议直接推送,适用于 cron 定时任务、跨 session 通知等场景。
主动向元宝派(Yuanbao Pai)群聊和私聊发送消息和文件。独立于 OpenClaw 插件通道,通过 WebSocket 协议直接推送,适用于 cron 定时任务、跨 session 通知等场景。
luhuiwang
未分类 clawhub v2.1.1 1 版本 99864.9 Key: 需要
★ 0
Stars
📥 739
下载
💾 89
安装
1
版本
#latest

概述

yuanbao-send

主动向元宝派(Yuanbao Pai)群聊和私聊发送消息和文件,独立于 OpenClaw 插件通道。

为什么需要这个

OpenClaw 的 yuanbao 插件通过 WebSocket 收发消息,但只在用户 @bot 时才能回复。

无法从 cron 定时任务、其他 agent session、或后台脚本主动推送消息到群聊或私聊。

本 skill 直接连接 Yuanbao WebSocket 协议,绕过通道限制,实现主动推送(群聊 + 私聊)。

前置条件

条件说明
------------
Python3.8+(需包含 websocket-client、cos-python-sdk-v5)
websocket-clientpip install websocket-client
cos-python-sdk-v5pip install cos-python-sdk-v5(文件上传需要)
元宝通道配置~/.openclaw/openclaw.jsonchannels.yuanbao 已配置 appKey + appSecret

> ⚠️ 确保 python3 环境已安装 websocket-client 和 cos-python-sdk-v5,否则文件上传会失败。

> 如系统有多个 Python 版本,可通过修改 send.py 的 shebang 指定。

用法

# 发送群消息
python3 send.py send <群号> <消息内容>

# 发送私聊消息
python3 send.py dm <用户open_id> <消息内容>

# 上传文件并发送(群聊)
python3 send.py upload <群号> <文件路径>

# 上传文件并发送(私聊)
python3 send.py upload-dm <用户open_id> <文件路径>

示例

# 群聊文字消息
python3 send.py send 123456789 "任务完成 ✅"

# 私聊文字消息
python3 send.py dm "ou_xxx_open_id" "你好!"

# 群聊上传图片
python3 send.py upload 123456789 photo.png

# 私聊上传文件
python3 send.py upload-dm "ou_xxx_open_id" report.docx

支持的消息类型

命令说明消息类型
---------------------
send / dm发送文字TIMTextElem
upload / upload-dm 上传图片.png .jpg .gif .webp .bmp .heic .tiff .icoTIMImageElem
upload / upload-dm 上传文件.docx .pptx .xlsx .pdf .txt .zip .wav .mp3 .mp4 .md 等TIMFileElem

> ⚠️ 元宝 Bot 平台仅支持 TIMTextElem、TIMImageElem、TIMFileElem 三种消息类型。

> TIMSoundElem 和 TIMVideoFileElem 不支持。音频/视频可通过 TIMFileElem 发送。

返回值

{
  "ok": true,
  "code": -1,
  "message": "succ",
  "file": "test.png",
  "type": "TIMImageElem"
}

工作原理

文字消息(群聊 / 私聊)

send.py → 签票 → WebSocket → auth-bind → TIMTextElem(send_group / send_c2c)→ 关闭

文件上传(群聊 / 私聊)

send.py → 签票 → /api/resource/genUploadInfo → COS put_object → WebSocket → TIMImageElem / TIMFileElem → 关闭
  1. 签票:用 appKey + appSecret 通过 HMAC-SHA256 签名获取临时 token
  2. 获取上传凭证:调用 /api/resource/genUploadInfo 获取 COS 临时凭证(bucket、region、临时密钥)
  3. COS 上传:使用 cos-python-sdk-v5 的 put_object 上传文件到腾讯云 COS
  4. 发送消息:通过 WebSocket 发送包含 resourceUrl 的文件消息

Protobuf 字段编号(MsgContent)

元宝 WebSocket 协议使用的 protobuf schema:

字段 ID名称类型说明
---------------------------
1textstring文本内容
2uuidstring唯一标识
3imageFormatuint32图片格式(255=其他)
4datastring自定义数据
5descstring描述
6extstring扩展字段
7soundstring音频 URL
8imageInfoArrayImImageInfoArray图片信息数组
9indexuint32索引
10urlstring文件下载 URL
11fileSizeuint32文件大小
12fileNamestring文件名

ImImageInfoArray

字段 ID名称类型
---------------------
1typeuint32
2sizeuint32
3widthuint32
4heightuint32
5urlstring

各消息类型使用的字段

  • TIMTextElem:text(1)
  • TIMImageElem:uuid(2) + imageFormat(3) + imageInfoArray(8)
  • TIMFileElem:uuid(2) + url(10) + fileSize(11) + fileName(12)

安全

  • 读取本地 openclaw.json 中的 appKey / appSecret
  • 不存储、不传输任何凭证到第三方
  • 签票请求走 HTTPS

限制

  • 需要 bot 已加入目标群
  • 独立运行,不写入 OpenClaw session 日志
  • WebSocket 连接是临时的(每次发送都重新连接)
  • 文件大小限制由元宝平台决定(通常 20MB)
  • TIMSoundElem / TIMVideoFileElem 不支持
  • ⚠️ 与 OpenClaw 插件冲突: send.py 使用与插件相同的 bot_id 建立 WebSocket 连接,会导致插件现有连接被踢(code=4014 instanceid conflict)。插件需等待 health-monitor 重启(约 15 分钟)才能恢复接收消息。建议仅在插件不需要活跃时使用(如 cron 定时推送、后台通知),避免频繁调用。

版本历史

共 1 个版本

  • v2.1.1 当前
    2026-03-30 20:45 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Xiaomi MiMo Voice

luhuiwang
小米 MiMo V2 TTS 语音合成,支持中英文及多种风格(情感、角色扮演、方言、语速控制等)。
★ 0 📥 408

Ms Ai

luhuiwang
ModelScope AI:文生图、图生图、视觉理解、文本生成;限速时自动切换模型。
★ 0 📥 411

Manual AI

luhuiwang
当自动 AI API 调用失败时,通过人机协作完成任务。 支持 6 个核心 AI 平台:Gemini、Google AI、ChatGPT、豆包、千问、NotebookLM。 提供智能平台推荐、提示词优化、批量任务支持。
★ 0 📥 405