diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-05 07:13:52 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 07:13:52 +0000 |
| commit | 1dbf610c8861a9b6d9a52f8cd0a1ec5ab2c4d156 (patch) | |
| tree | 2305fa013720362848d24d00f20115dadf2e0496 /python-soco-cli.spec | |
| parent | cc467076b0d7588b11607696228a1f238174093a (diff) | |
automatic import of python-soco-cliopeneuler20.03
Diffstat (limited to 'python-soco-cli.spec')
| -rw-r--r-- | python-soco-cli.spec | 255 |
1 files changed, 255 insertions, 0 deletions
diff --git a/python-soco-cli.spec b/python-soco-cli.spec new file mode 100644 index 0000000..8613f09 --- /dev/null +++ b/python-soco-cli.spec @@ -0,0 +1,255 @@ +%global _empty_manifest_terminate_build 0 +Name: python-soco-cli +Version: 0.4.62 +Release: 1 +Summary: Sonos command line control utility, based on SoCo +License: Apache Software License +URL: https://github.com/avantrec/soco-cli +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/72/cc/174810c7ce761d5120755ccd7f7918cbacff0d70c6a700c58e45f6f7be66/soco-cli-0.4.62.tar.gz +BuildArch: noarch + +Requires: python3-tabulate +Requires: python3-rangehttpserver +Requires: python3-xmltodict +Requires: python3-soco +Requires: python3-ifaddr +Requires: python3-soco +Requires: python3-ifaddr +Requires: python3-fastapi +Requires: python3-uvicorn + +%description + +# SoCo-CLI: Control Sonos from the Command Line + +## Overview + +SoCo-CLI is a powerful 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 provides easy control over a huge range of speaker functions, including playback, volume, groups, EQ settings, sleep timers, alarms, speaker settings, the playback queue, etc. Multiple commands can be run in sequence, including the ability to insert delays between commands, to wait for speakers to stop or start playing, and to create repeated action sequences using loops. Audio files from the local filesystem can be played directly on Sonos. + +SoCo-CLI has an orderly command structure and consistent return values, making it suitable for use in automated scripts, `cron` jobs, etc. + +For interactive command line use, SoCo-CLI provides a powerful **Interactive Shell Mode** that improves speed of operation and reduces typing. + +SoCo-CLI can be imported as a streamlined, high-level **API** library by other Python programs, and acts as an intermediate abstraction layer between the client program and the underlying SoCo library, simplifying the use of SoCo. + +SoCo-CLI can also run as a simple **HTTP API server**, providing access to a huge range of actions via simple HTTP requests. (Requires Python 3.6 or above.) + +## Supported Environments + +- Requires Python 3.5+. (The HTTP API Server functionality requires Python 3.6 or above.) +- Runs on all platforms supported by Python. Tested on various versions of Linux, macOS and Windows. +- Works with Sonos 'S1' and 'S2' systems, as well as split S1/S2 systems. + +## Installation + +Install from PyPI 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 in the full documentation). +- `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. + +### 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 30m : Kitchen stop`** Plays 'Jazz24' for 30 minutes, 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. + + +%package -n python3-soco-cli +Summary: Sonos command line control utility, based on SoCo +Provides: python-soco-cli +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-soco-cli + +# SoCo-CLI: Control Sonos from the Command Line + +## Overview + +SoCo-CLI is a powerful 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 provides easy control over a huge range of speaker functions, including playback, volume, groups, EQ settings, sleep timers, alarms, speaker settings, the playback queue, etc. Multiple commands can be run in sequence, including the ability to insert delays between commands, to wait for speakers to stop or start playing, and to create repeated action sequences using loops. Audio files from the local filesystem can be played directly on Sonos. + +SoCo-CLI has an orderly command structure and consistent return values, making it suitable for use in automated scripts, `cron` jobs, etc. + +For interactive command line use, SoCo-CLI provides a powerful **Interactive Shell Mode** that improves speed of operation and reduces typing. + +SoCo-CLI can be imported as a streamlined, high-level **API** library by other Python programs, and acts as an intermediate abstraction layer between the client program and the underlying SoCo library, simplifying the use of SoCo. + +SoCo-CLI can also run as a simple **HTTP API server**, providing access to a huge range of actions via simple HTTP requests. (Requires Python 3.6 or above.) + +## Supported Environments + +- Requires Python 3.5+. (The HTTP API Server functionality requires Python 3.6 or above.) +- Runs on all platforms supported by Python. Tested on various versions of Linux, macOS and Windows. +- Works with Sonos 'S1' and 'S2' systems, as well as split S1/S2 systems. + +## Installation + +Install from PyPI 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 in the full documentation). +- `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. + +### 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 30m : Kitchen stop`** Plays 'Jazz24' for 30 minutes, 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. + + +%package help +Summary: Development documents and examples for soco-cli +Provides: python3-soco-cli-doc +%description help + +# SoCo-CLI: Control Sonos from the Command Line + +## Overview + +SoCo-CLI is a powerful 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 provides easy control over a huge range of speaker functions, including playback, volume, groups, EQ settings, sleep timers, alarms, speaker settings, the playback queue, etc. Multiple commands can be run in sequence, including the ability to insert delays between commands, to wait for speakers to stop or start playing, and to create repeated action sequences using loops. Audio files from the local filesystem can be played directly on Sonos. + +SoCo-CLI has an orderly command structure and consistent return values, making it suitable for use in automated scripts, `cron` jobs, etc. + +For interactive command line use, SoCo-CLI provides a powerful **Interactive Shell Mode** that improves speed of operation and reduces typing. + +SoCo-CLI can be imported as a streamlined, high-level **API** library by other Python programs, and acts as an intermediate abstraction layer between the client program and the underlying SoCo library, simplifying the use of SoCo. + +SoCo-CLI can also run as a simple **HTTP API server**, providing access to a huge range of actions via simple HTTP requests. (Requires Python 3.6 or above.) + +## Supported Environments + +- Requires Python 3.5+. (The HTTP API Server functionality requires Python 3.6 or above.) +- Runs on all platforms supported by Python. Tested on various versions of Linux, macOS and Windows. +- Works with Sonos 'S1' and 'S2' systems, as well as split S1/S2 systems. + +## Installation + +Install from PyPI 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 in the full documentation). +- `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. + +### 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 30m : Kitchen stop`** Plays 'Jazz24' for 30 minutes, 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. + + +%prep +%autosetup -n soco-cli-0.4.62 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-soco-cli -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.4.62-1 +- Package Spec generated |
