SONOS命令行工具

sonos-cli的Python项目详细描述


SONOS命令行界面

从命令行控制你的sonos播放器。使用Sonos Control API来控制sonos组。

安装

在OSX上使用Homebrew

brew tap bwilczynski/tap
brew install sonos-cli

使用pip(需要python 3):

pip install sonos-cli

用法

$ sonos [OPTIONS] COMMAND [ARGS]

开始

Setup integration使用sonos api 运行sonos config以提供 应用程序的客户端ID和客户端机密。

或者在运行sonos之前设置以下环境变量:

exportSONOS_CLIENT_ID={YOUR_CLIENT_ID}exportSONOS_CLIENT_SECRET={YOUR_CLIENT_SECRET}

登录到SONOS服务(打开Web浏览器,将用户发送到SONOS登录服务):

$ sonos login

设置活动家庭:

$ sonos set household

有关用法和帮助内容,请传入--help参数,例如:

$ sonos --help
$ sonos get --help

可用命令

从SONOS获取信息:

$ sonos get [groups | households | playlists | tracks]

使用--output选项格式化显示的结果:

$ sonos get groups --output table

coordinatorId             id                                   name              playbackState
------------------------  -----------------------------------  ----------------  ----------------------
RINCON_B8E937E6D36202100  RINCON_B8E937E6D36202100:23          Bedroom.          PLAYBACK_STATE_PAUSED
RINCON_B8E937E6D40E02100  RINCON_B8E937E6D40E02100:128         Bathroom          PLAYBACK_STATE_IDLE
RINCON_B8E937DA7E6802100  RINCON_B8E937DA7E6802100:17          Bathroom 2.       PLAYBACK_STATE_PAUSED
RINCON_347E5C90FA9502100  RINCON_347E5C90FA9502100:4142323492  Living Room       PLAYBACK_STATE_PLAYING
$ sonos get groups --output json

[{"coordinatorId": "RINCON_B8E937E6D36202100",
    "id": "RINCON_B8E937E6D36202100:23",
    "name": "Bedroom",
    "playbackState": "PLAYBACK_STATE_PAUSED",
    ...
  }
  ...
}

控制播放:

$ sonos play
$ sonos pause
$ sonos next
$ sonos prev

设置活动组/家庭:

$ sonos set[group | household]

获取播放状态:

$ sonos status

对照组体积

$ sonos volume
20
$ sonos volume 25

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java就是EJB2。0事务回滚撤消/还原数据库更改?   java密码编校记录器   java我应该如何格式化我的return语句,这样我就不会重复答案了?   java插入到二叉树中,无需对输入进行排序   java如何为安卓初始化instabug?   java是否可以在ApachePOIxWPF中设置默认表样式?   eclipse如何在java中获取字符的Unicode   java libDGX不绘制大尺寸的纹理   java一个线程可以在多个进程之间共享吗?如果是,怎么做?   windows 7 Java文件IO和“拒绝访问”错误   java为什么InstanceItem不调用而ViewPager不工作?   多线程如何在java中等待一组线程“真正”完成?   java(数组)中二进制到十进制转换的问题   在构造函数中将数组用作参数时出现java空指针错误   在Tomcat8中,java请求在高峰时间占用太多时间   java无法使用按钮实例化类   java如何在每个元素的末尾列出解析器组?   如何从Java中的字符串行提取特定术语?   获取运行时错误“java.lang.IllegalStateException:无法为安卓执行方法:onClick”