Dingtalk File Send
自动将文件上传并发送至钉钉用户,基于当前会话账号绑定。
通过 message_id 获取飞书消息内容,支持互动卡片及线程上下文。
openclaw skills install @deadblue22/feishu-interactive-card命令、参数、文件名以原文为准
通过 IM API 使用 message_id 获取任意飞书消息内容,支持可选的线程上下文。
交互卡片(msg_type: interactive):飞书获取消息 API(/im/v1/messages/{id})在 body.content 中仅返回 降级文本(fallback/degraded text),而非完整的卡片 JSON。这是飞书平台的限制 —— 发送后无法通过接口获取渲染后的卡片结构。
解决方案:使用 --thread 参数获取完整线程上下文。交互卡片通常作为对某条文本或动态消息的回复,该原始消息中包含实际内容。通过读取线程可获得完整信息。
# 获取单条消息
python3 scripts/fetch_message.py <message_id>
# 获取带线程上下文的消息(根消息 + 线程内所有回复)
python3 scripts/fetch_message.py <message_id> --thread
# 输出原始 API 响应
python3 scripts/fetch_message.py <message_id> --raw自动认证 —— 从 ~/.openclaw/openclaw.json 读取 appId / appSecret。也可通过设置 FEISHU_APP_ID 和 FEISHU_APP_SECRET 环境变量,或使用 --token <tenant_access_token> 手动传入令牌。
返回 JSON 格式数据,包含:message_id、msg_type、sender_id、sender_type、chat_id、create_time、root_id、parent_id、content(已解析)。
启用 --thread 后,额外添加 thread 数组(同一线程中的所有消息,按时间顺序排列)和 thread_count。
当在回复消息中遇到 [交互卡片] 时:
message_id(通过 has_reply_context 或父消息信息)fetch_message.py <parent_message_id> --thread已收录 1 个 Skill