media-orchestrator
解析、下载媒体(音频/视频)并将其传送到聊天平台的统一技能。集成 yt-dlp 以实现分辨率并处理 Spotify 元数据同步。
安装 / 下载方式
TotalClaw CLI推荐
totalclaw install totalclaw:totalclaw~sieershafilone-media-orchestratorcURL直接下载,无需登录
curl -fsSL https://skills.taituai.com/api/skills/totalclaw%3Atotalclaw~sieershafilone-media-orchestrator/file -o sieershafilone-media-orchestrator.md## 概述(中文)
解析、下载媒体(音频/视频)并将其传送到聊天平台的统一技能。集成 yt-dlp 以实现分辨率并处理 Spotify 元数据同步。
## 原文
# Media Orchestrator
This skill centralizes the logic for handling all media requests (audio, video, Spotify tracks) from chat platforms like WhatsApp and Telegram. It leverages `yt-dlp` for robust search and download capabilities from YouTube and performs Spotify metadata resolution for WebUI integration.
## ⚙️ How it Works
1. **Resolution**: Upon receiving a media request, the orchestrator uses `yt-dlp`'s `ytsearch1:` functionality to find the highest quality match from YouTube.
2. **Download**: The selected media (audio or video) is downloaded directly into the OpenClaw workspace.
3. **Delivery**: The downloaded file is then dispatched to the requesting chat platform (WhatsApp/Telegram) using the `message` tool's `filePath` argument, ensuring silent delivery as per protocol.
4. **Spotify Sync**: For Spotify-specific requests, the orchestrator resolves track metadata via Zero-Auth scraping (bypassing direct API holds) and persists this data as a JSON contract in the workspace, enabling synchronized playback in the OpenClaw WebUI.
## 📂 Workspace Paths
- **Primary Workspace**: `/home/ky11rie/.openclaw/workspace/`
- Raw downloaded media files (.mp4, .mp3, etc.) reside here temporarily.
- **Spotify Metadata**: `/home/ky11rie/.openclaw/workspace/media/spotify/`
- Stores Spotify track contracts (e.g., `track_id.json`) generated by the `spotify-surface` component.
- **Skill Scripts**: `/home/ky11rie/.openclaw/workspace/skills/spotify-surface/scripts/`
- Contains the dedicated logic engine for Spotify integration.
## 🛠️ Commands
This skill acts as an underlying orchestrator, processing natural language requests.
Example intents it handles:
- `send audio file song: [song name]`
- `send video file mp4 480p: [video name]`
- `play [spotify track or url]` (leveraging spotify-surface)