关于 sonoscli
Sonos CLI 是用于控制本地网络中 Sonos 音箱的技能,涵盖播放、音量、音箱分组、收藏、队列及通过 SMAPI 搜索音乐。
主要功能
- 01发现音箱并查看状态
- 02控制播放和音量
- 03加入或拆分音箱分组
- 04管理收藏和队列
- 05通过 SMAPI 搜索音乐
适用场景
- 01控制指定音箱的播放
- 02将音箱分组以共同聆听
- 03通过 Sonos 服务查找曲目
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ openclaw/ openclaw --skill sonoscli安装后在 Claude Code 中输入/sonoscli确认已加载。
详细介绍
Sonos CLI
使用 sonos 控制本地网络上的 Sonos 扬声器。
快速入门
sonos discoversonos status --name "Kitchen"sonos play|pause|stop --name "Kitchen"sonos volume set 15 --name "Kitchen"
常见任务
- 分组:
sonos group status|join|unjoin|party|solo - 收藏:
sonos favorites list|open - 队列:
sonos queue list|play|clear - Spotify 搜索(通过 SMAPI):
sonos smapi search --service "Spotify" --category tracks "query"
注意
- 如果 SSDP 失败,请指定
--ip <speaker-ip>。 - Spotify Web API 搜索为可选功能,并且需要
SPOTIFY_CLIENT_ID/SECRET。 - 如果出现错误,请查看故障排除部分;如果匹配项足够相关,请提供建议。
故障排除
sonos discover - no route to host
- 出现错误
Error: write udp4 0.0.0.0:64326->239.255.255.250:1900: sendto: no route to host (Command exited with code 1)时- 请注意,
0.0.0.0:后的端口号是临时端口,会发生变化,子网掩码也可能不完全匹配 sendto: no route to host应保持一致
- 请注意,
- 建议用户,在 Mac OS 上以 direct(无 Docker 沙盒)模式运行时,需要为 Gateway 的顶层宿主父进程启用“设置 -> 隐私与安全性 -> 本地网络”
- 如果通过
launchd运行,则为node - 如果在终端中直接运行,则为
Terminal - 如果通过 VS Code 中的终端运行,则为
Visual Studio Code
- 如果通过
- 另一个选择是使用
sandbox(docker 容器),并允许该沙盒访问网络
sonos discover - bind: operation not permitted
- 出现错误
Error: listen udp4 0.0.0.0:0: bind: operation not permitted - 建议用户,他们可能正在通过 Codex 或不允许网络访问的其他沙盒运行(可以在启用沙盒的 Codex CLI 会话中运行
sonos discover,且不批准提权请求,以复现此情况)
评论
支持 Markdown