首页 资讯 下载 教程 Skills 社群

OpenClaw 音乐与媒体控制教程

概述

OpenClaw 集成了丰富的音乐和媒体工具,从 Spotify 播放控制到歌曲识别,从图片生成到社交媒体管理,让你的 AI 助手成为全方位的媒体管理中心。

Spotify 播放控制

配置 Spotify 连接

首先需要在 Spotify Developer Dashboard 创建应用并获取凭据:

{
  tools: {
    spotify: {
      enabled: true,
      clientId: "${SPOTIFY_CLIENT_ID}",
      clientSecret: "${SPOTIFY_CLIENT_SECRET}",
      // OAuth 回调地址
      redirectUri: "http://localhost:3000/callback/spotify"
    }
  }
}

环境变量设置:

SPOTIFY_CLIENT_ID=your_client_id
SPOTIFY_CLIENT_SECRET=your_client_secret
SPOTIFY_REFRESH_TOKEN=your_refresh_token

首次授权

# 启动授权流程
openclaw tools auth spotify

# 浏览器会打开 Spotify 授权页面
# 授权后会自动保存 refresh_token

使用示例

用户: 播放周杰伦的晴天

OpenClaw: [调用 spotify.play]
{
  query: "周杰伦 晴天",
  type: "track"
}

正在播放:晴天 - 周杰伦
专辑:叶惠美
时长:4:29

用户: 声音小一点

OpenClaw: [调用 spotify.setVolume]
{
  volume: 40
}

音量已调整到 40%。

用户: 现在播放的是什么歌?

OpenClaw: [调用 spotify.getCurrentTrack]

当前播放:
- 歌曲: 晴天
- 歌手: 周杰伦
- 专辑: 叶惠美
- 进度: 2:15 / 4:29

播放列表管理

用户: 创建一个工作学习的歌单

OpenClaw: [调用 spotify.createPlaylist]
{
  name: "工作学习专注",
  description: "适合专注工作和学习的轻音乐",
  public: false
}

[调用 spotify.search 并 addToPlaylist]

歌单"工作学习专注"已创建,已添加 15 首推荐曲目:
1. River Flows in You - Yiruma
2. Experience - Ludovico Einaudi
3. ...

Sonos 音箱控制

配置

{
  tools: {
    sonos: {
      enabled: true,
      // Sonos 会自动发现局域网内的音箱
      discovery: "auto",
      // 音箱别名
      speakers: {
        "客厅音箱": "Living Room",
        "卧室音箱": "Bedroom",
        "厨房音箱": "Kitchen"
      }
    }
  }
}

控制示例

用户: 在客厅音箱播放轻音乐

OpenClaw: [调用 sonos.play]
{
  speaker: "客厅音箱",
  query: "轻音乐",
  source: "spotify"
}

客厅音箱已开始播放轻音乐。

用户: 所有音箱同步播放

OpenClaw: [调用 sonos.group]
{
  speakers: ["客厅音箱", "卧室音箱", "厨房音箱"],
  mode: "sync"
}

已将所有音箱加入同步播放组。

Shazam 歌曲识别

配置

{
  tools: {
    shazam: {
      enabled: true,
      apiKey: "${SHAZAM_API_KEY}"
    }
  }
}

使用场景

用户: [发送一段音频消息] 这是什么歌?

OpenClaw: [调用 shazam.identify]

识别结果:
- 歌曲: 稻香
- 歌手: 周杰伦
- 专辑: 魔杰座
- 发行年份: 2008

要在 Spotify 上播放这首歌吗?

图片生成

配置

{
  tools: {
    image_generation: {
      enabled: true,
      provider: "dall-e",
      apiKey: "${OPENAI_API_KEY}",
      defaults: {
        model: "dall-e-3",
        size: "1024x1024",
        quality: "standard"    // standard | hd
      }
    }
  }
}

生成示例

用户: 帮我生成一张赛博朋克风格的城市夜景

OpenClaw: [调用 image_generation.generate]
{
  prompt: "A cyberpunk cityscape at night with neon lights, flying cars, and rain-slicked streets, highly detailed digital art",
  size: "1024x1024",
  quality: "hd"
}

[返回生成的图片]

已为你生成赛博朋克城市夜景图片。需要调整或重新生成吗?

屏幕截图工具

配置

{
  tools: {
    screenshot: {
      enabled: true,
      // 截图保存目录
      savePath: "/tmp/openclaw/screenshots",
      // 默认格式
      format: "png"
    }
  }
}

使用示例

用户: 截取当前屏幕

OpenClaw: [调用 screenshot.capture]
{
  type: "fullscreen"
}

[返回屏幕截图]

已为你截取当前屏幕画面。

用户: 截取某个区域

OpenClaw: [调用 screenshot.capture]
{
  type: "region",
  region: { x: 100, y: 100, width: 800, height: 600 }
}

GIF 搜索

配置

{
  tools: {
    gif_search: {
      enabled: true,
      provider: "giphy",
      apiKey: "${GIPHY_API_KEY}",
      // 内容分级
      rating: "g"    // g | pg | pg-13 | r
    }
  }
}

使用示例

用户: 找一个庆祝的 GIF

OpenClaw: [调用 gif_search.search]
{
  query: "celebration",
  limit: 3
}

为你找到以下庆祝 GIF:
1. [欢呼的小猫 GIF]
2. [烟花绽放 GIF]
3. [跳舞庆祝 GIF]

要发送哪一个?

社交媒体集成

Twitter/X 发帖

{
  tools: {
    twitter: {
      enabled: true,
      apiKey: "${TWITTER_API_KEY}",
      apiSecret: "${TWITTER_API_SECRET}",
      accessToken: "${TWITTER_ACCESS_TOKEN}",
      accessTokenSecret: "${TWITTER_ACCESS_TOKEN_SECRET}"
    }
  }
}

使用示例

用户: 帮我发一条推文,分享我们项目上线的好消息

OpenClaw: 我拟了一条推文,请确认:

"我们的新项目正式上线了!经过团队数月的努力,终于和大家见面。感谢所有参与者的付出!🚀 #新项目 #上线"

确认发送吗?

用户: 好的,发吧

OpenClaw: [调用 twitter.post]
{
  text: "我们的新项目正式上线了!..."
}

推文已发布成功!链接:https://x.com/...

工具组合使用

场景:音乐识别 + 播放

用户: [发送音频] 这首歌是什么?帮我加到收藏

OpenClaw:
[shazam.identify] -> 稻香 - 周杰伦
[spotify.search] -> 找到对应曲目
[spotify.addToLibrary] -> 已添加到音乐库

歌曲"稻香"已识别并添加到你的 Spotify 收藏中。要现在播放吗?

场景:图片生成 + 社交分享

用户: 生成一张日落海滩的图,发到我的推特上

OpenClaw:
[image_generation.generate] -> 生成图片
[twitter.postWithMedia] -> 附图发布

已生成日落海滩图片并发布到你的 Twitter。

故障排查

Spotify 授权过期

# 重新授权
openclaw tools auth spotify --refresh

# 检查令牌状态
openclaw tools status spotify

Sonos 音箱未发现

# 手动扫描网络
openclaw tools discover sonos

# 指定音箱 IP
openclaw config set tools.sonos.speakers.客厅 "192.168.1.30"

这些媒体工具让 OpenClaw 成为你的个人娱乐和媒体管理助手,通过自然语言就能完成各种操作。