Skip to main content

Sonos Command-Line Tools

Project description

Sonos command-line interface

Control your Sonos players from command-line. Uses Sonos Control API to control Sonos groups.

Installation

Using pip (requires Python 3):

pip install sonos-cli

Usage

$ sonos [OPTIONS] COMMAND [ARGS]

Get Started

Setup integration with Sonos API and run sonos config to provide your application's Client ID and Client Secret.

Alternatively set the following environment variables before running sonos:

export SONOS_CLIENT_ID={YOUR_CLIENT_ID}
export SONOS_CLIENT_SECRET={YOUR_CLIENT_SECRET}

Login to your Sonos service (opens a web browser sending user to Sonos login service):

$ sonos login

Set active household:

$ sonos set household

For usage and help content, pass in the --help parameter, for example:

$ sonos --help
$ sonos get --help

Available commands

Get information from your Sonos:

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

Format displayed result using --output option:

$ 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",
    ...
  }
  ...
}

Control playback:

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

Set active group / household:

$ sonos set [group | household]

Get playback status:

$ sonos status

Control group volume

$ sonos volume
20
$ sonos volume 25

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sonos-cli-0.2.0.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sonos_cli-0.2.0-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file sonos-cli-0.2.0.tar.gz.

File metadata

  • Download URL: sonos-cli-0.2.0.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2

File hashes

Hashes for sonos-cli-0.2.0.tar.gz
Algorithm Hash digest
SHA256 db21019bafe36becb20ec4bfcaf884ad555dc796847bd90bbc752e1e4762d665
MD5 221ba5e924bf138456073eea03153fdc
BLAKE2b-256 f731b1fd33ced957716df571e517192f398f03fcfd9398d7240d09a4e56bc61a

See more details on using hashes here.

File details

Details for the file sonos_cli-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: sonos_cli-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2

File hashes

Hashes for sonos_cli-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3f1bb6622228a7eeddaad318716636af5100555ed420b23d7851521cc28f1af8
MD5 4f6c48a7fd343d26ff90144bbb079efc
BLAKE2b-256 a4acd44b828215e296875fd00a6c2e44b57e8d8eced6f89dd9d265b227d2b113

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page