Metadata-Version: 2.1
Name: soco-cli
Version: 0.1.11
Summary: Sonos command line utility, based on SoCo
Home-page: https://github.com/avantrec/soco-cli
Author: Avantrec Ltd
Author-email: soco_cli@avantrec.com
License: UNKNOWN
Description: # Soco CLI: Control Sonos Systems from the Command Line
        
        **Please consider this utility to be experimental at the moment. The command line structure and return values are not yet fully finalised. Feedback welcome.**
        
        ## Overview
        
        Soco CLI is a command line wrapper for the popular Python SoCo library [1] for controlling Sonos systems. Soco CLI is written entirely in Python and is portable across platforms.
        
        A simple `sonos` command is provided which allows easy control of speaker playback, volume, groups, EQ settings, sleep timers, etc. Multiple commands can be run in sequence, including the ability to insert delays between commands.
        
        Sonos CLI aims for an orderly command structure and consistent return values, making it suitable for use in scripted automation scenarios, `cron` jobs, etc.
        
        ## Supported Environments
        
        - Requires Python 3.5 or greater.
        - Should run on all platforms supported by Python. Tested on various versions of Linux, macOS and Windows.
        
        ## Installation
        
        Install from PyPi [2] using **`pip install soco-cli`**.
        
        ## User Guide
        
        The installer adds the `sonos` command to the PATH. All commands have the form:
        
        ```
        sonos SPEAKER ACTION <parameters>
        ```
        
        - `SPEAKER` identifies the speaker, and can be the speaker's Sonos Room name or its IPv4 address in dotted decimal format. Note that the speaker name is case sensitive (unless using alternative discovery, discussed below).
        - `ACTION` is the operation to perform on the speaker. It can take zero or more parameters depending on the operation.
        
        Actions that make changes to speakers do not generally provide return values. Instead, the program exit code can be inspected to test for successful operation (exit code 0). If an error is encountered, an error message will be printed to `stderr`, and the program will return a non-zero exit code.
        
        If you experience any issues with finding your speakers, or if you have multiple Sonos systems ('Households') on your network, please take a look at the [Alternative Discovery](#alternative-discovery) section below. You may prefer to use this approach anyway, even if normal SoCo discovery works for you, as it offers some advantages.
        
        ### Simple Usage Examples:
        
        - **`sonos "Living Room" volume`** Returns the current volume setting of the *Living Room* speaker.
        - **`sonos Study volume 25`** Sets the volume of the *Study* speaker to 25.
        - **`sonos Study group Kitchen`** Groups the *Study* speaker with the *Kitchen* speaker.
        - **`sonos 192.168.0.10 mute`** Returns the mute state ('on' or 'off') of the speaker at the given IP address.
        - **`sonos 192.168.0.10 mute on`** Mutes the speaker at the given IP address.
        - **`sonos Kitchen play_favourite Jazz24 : wait 1800 : Kitchen stop`** Plays 'Jazz24' for 30 minutes (1800 seconds), then stops playback.
        
        Please see [https://github.com/avantrec/soco-cli](https://github.com/avantrec/soco-cli) for full documentation.
        
        ## Links
        
        [1] https://github.com/SoCo/SoCo
        
        ## Acknowledgments
        
        All trademarks acknowledged. Avantrec Ltd has no connection with Sonos Inc.
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.5
Description-Content-Type: text/markdown
