summaryrefslogtreecommitdiff
path: root/python-pyrainbird.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 07:31:05 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 07:31:05 +0000
commit896f6454c23ec83651531e4dbe4b77ad5014b74d (patch)
treedd89cefd188eb11a39103e11a752b327bcdd6de6 /python-pyrainbird.spec
parentad2cc483900c3845c279913a59974d64fe0eaf37 (diff)
automatic import of python-pyrainbird
Diffstat (limited to 'python-pyrainbird.spec')
-rw-r--r--python-pyrainbird.spec204
1 files changed, 204 insertions, 0 deletions
diff --git a/python-pyrainbird.spec b/python-pyrainbird.spec
new file mode 100644
index 0000000..a4f21cc
--- /dev/null
+++ b/python-pyrainbird.spec
@@ -0,0 +1,204 @@
+%global _empty_manifest_terminate_build 0
+Name: python-pyrainbird
+Version: 2.0.1
+Release: 1
+Summary: Rain Bird Controller
+License: MIT
+URL: https://github.com/allenporter/pyrainbird
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f7/61/9605169475f3d6d537fac4509fdc2dd4964d9dab65e73601209dc5cfadca/pyrainbird-2.0.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-pycryptodome
+Requires: python3-requests
+Requires: python3-PyYAML
+Requires: python3-pydantic
+Requires: python3-dateutil
+Requires: python3-ical
+
+%description
+Python module for interacting with [WiFi LNK](https://www.rainbird.com/products/module-wi-fi-lnk) module of the Rain Bird Irrigation system. This project has no affiliation with Rain Bird.
+
+This module communicates directly towards the IP Address of the WiFi module. You can start/stop the irrigation, get the currently active zone, and other controller settings. This library currently only has very limited cloud support. Also there are a number of Rain Bird devices with very different command APIs.
+
+See [documentation](https://allenporter.github.io/pyrainbird/) for full quickstart and API reference.
+See the [github project](https://github.com/allenporter/pyrainbird).
+
+# Quickstart
+
+This is an example usage to get the current irrigation state for all available
+irrigation zones:
+```
+import aiohttp
+from pyrainbird import async_client
+
+async with aiohttp.ClientSession() as client:
+ controller: AsyncRainbirdController = async_client.CreateController(
+ client,
+ "192.168.1.1",
+ "password"
+ )
+ zones = await controller.get_available_stations()
+ states = await controller.get_zone_states()
+ for zone in zones:
+ if zone in states.active_set:
+ print("Sprinkler zone {zone} is active")
+```
+
+See [examples](examples/) for additional details on how to use the APIs and an example command
+line tool for querying the device.
+
+# Compatibility
+
+This library has been tested with the following devices:
+
+ - ESP-TM2
+
+You are welcome to file an issue for improved compatibility with your device especially if you
+include debug logs that capture the API responses form the device.
+
+See [CONTRIBUTING](CONTRIBUTING.md) for details on developing in the library itself, such as
+running the tests and other tooling used in development.
+
+
+%package -n python3-pyrainbird
+Summary: Rain Bird Controller
+Provides: python-pyrainbird
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-pyrainbird
+Python module for interacting with [WiFi LNK](https://www.rainbird.com/products/module-wi-fi-lnk) module of the Rain Bird Irrigation system. This project has no affiliation with Rain Bird.
+
+This module communicates directly towards the IP Address of the WiFi module. You can start/stop the irrigation, get the currently active zone, and other controller settings. This library currently only has very limited cloud support. Also there are a number of Rain Bird devices with very different command APIs.
+
+See [documentation](https://allenporter.github.io/pyrainbird/) for full quickstart and API reference.
+See the [github project](https://github.com/allenporter/pyrainbird).
+
+# Quickstart
+
+This is an example usage to get the current irrigation state for all available
+irrigation zones:
+```
+import aiohttp
+from pyrainbird import async_client
+
+async with aiohttp.ClientSession() as client:
+ controller: AsyncRainbirdController = async_client.CreateController(
+ client,
+ "192.168.1.1",
+ "password"
+ )
+ zones = await controller.get_available_stations()
+ states = await controller.get_zone_states()
+ for zone in zones:
+ if zone in states.active_set:
+ print("Sprinkler zone {zone} is active")
+```
+
+See [examples](examples/) for additional details on how to use the APIs and an example command
+line tool for querying the device.
+
+# Compatibility
+
+This library has been tested with the following devices:
+
+ - ESP-TM2
+
+You are welcome to file an issue for improved compatibility with your device especially if you
+include debug logs that capture the API responses form the device.
+
+See [CONTRIBUTING](CONTRIBUTING.md) for details on developing in the library itself, such as
+running the tests and other tooling used in development.
+
+
+%package help
+Summary: Development documents and examples for pyrainbird
+Provides: python3-pyrainbird-doc
+%description help
+Python module for interacting with [WiFi LNK](https://www.rainbird.com/products/module-wi-fi-lnk) module of the Rain Bird Irrigation system. This project has no affiliation with Rain Bird.
+
+This module communicates directly towards the IP Address of the WiFi module. You can start/stop the irrigation, get the currently active zone, and other controller settings. This library currently only has very limited cloud support. Also there are a number of Rain Bird devices with very different command APIs.
+
+See [documentation](https://allenporter.github.io/pyrainbird/) for full quickstart and API reference.
+See the [github project](https://github.com/allenporter/pyrainbird).
+
+# Quickstart
+
+This is an example usage to get the current irrigation state for all available
+irrigation zones:
+```
+import aiohttp
+from pyrainbird import async_client
+
+async with aiohttp.ClientSession() as client:
+ controller: AsyncRainbirdController = async_client.CreateController(
+ client,
+ "192.168.1.1",
+ "password"
+ )
+ zones = await controller.get_available_stations()
+ states = await controller.get_zone_states()
+ for zone in zones:
+ if zone in states.active_set:
+ print("Sprinkler zone {zone} is active")
+```
+
+See [examples](examples/) for additional details on how to use the APIs and an example command
+line tool for querying the device.
+
+# Compatibility
+
+This library has been tested with the following devices:
+
+ - ESP-TM2
+
+You are welcome to file an issue for improved compatibility with your device especially if you
+include debug logs that capture the API responses form the device.
+
+See [CONTRIBUTING](CONTRIBUTING.md) for details on developing in the library itself, such as
+running the tests and other tooling used in development.
+
+
+%prep
+%autosetup -n pyrainbird-2.0.1
+
+%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-pyrainbird -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 2.0.1-1
+- Package Spec generated