summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-15 08:21:09 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-15 08:21:09 +0000
commite97776faa998a0fd02547e909043f230b4bca0ff (patch)
tree257471f049fca68d3afcb756a0ff174c11437cfc
parent443e6e85ac6e668837e0341be04ef97b6b9bec19 (diff)
automatic import of python-pyblnet
-rw-r--r--.gitignore1
-rw-r--r--python-pyblnet.spec290
-rw-r--r--sources1
3 files changed, 292 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..7018e5e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/PyBLNET-0.9.1.tar.gz
diff --git a/python-pyblnet.spec b/python-pyblnet.spec
new file mode 100644
index 0000000..39ab7df
--- /dev/null
+++ b/python-pyblnet.spec
@@ -0,0 +1,290 @@
+%global _empty_manifest_terminate_build 0
+Name: python-PyBLNET
+Version: 0.9.1
+Release: 1
+Summary: Automate wireless communication to UVR1611 via BL-NET
+License: MIT
+URL: https://github.com/nielstron/pyblnet/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/e0/7f/819e14753b8894331a1abb5bd40a80fd0c8d1e0ee4d4f9032f1248edab61/PyBLNET-0.9.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-htmldom
+Requires: python3-requests
+
+%description
+# PyBLNET - a very basic python BL-NET bridge
+[![Build Status](https://travis-ci.com/nielstron/pyblnet.svg?branch=master)](https://travis-ci.com/nielstron/pyblnet)
+[![Coverage Status](https://coveralls.io/repos/github/nielstron/pyblnet/badge.svg?branch=master)](https://coveralls.io/github/nielstron/pyblnet?branch=master)
+
+A package that connects to the BL-NET that is connected itself to a UVR1611 device by Technische Alternative.
+It is able to read digital and analog values as well as to set switches to ON/OFF/AUTO.
+
+Documentation on the modules and their methods can be found with the methods and modules themselves.
+
+Two interfaces to BLNet exist and both are supported:
+- Webinterface - Class BLnetWeb
+- BLNet-Direct protocol [1] - Class BLNETDirect
+
+However, as of now, there is no testing on the BLNet-Direct protocol *of any kind*, so enabling it is discouraged until the interface is fixed.
+Parsing the data via the web interface is the preferred way of accessing the BLNet for now.
+
+The class BLNET is a wrapper around the two classes. When initializing the class, the two interfaces can be activated/deactivated.
+BLNetDirect provides 'analog', 'digital', 'speed', 'energy', 'power', whereas BLnetWeb supports 'analog' and 'digital' only.
+If both are active, BLNetDirect has priority.
+Setting switches and reading their manual/auto state is only possible via the BLNetWeb interface.
+
+### Usage
+
+```python
+from pyblnet import test_blnet, BLNET, BLNETWeb, BLNETDirect
+
+ip = '192.168.178.10'
+
+# Check if there is a blnet at given address
+test_blnet(ip) # -> True/False
+
+# Convenient high level interface
+blnet = BLNET(ip, password='pass', timeout=5)
+
+# Control a switch by its ID
+blnet.turn_on(10)
+blnet.turn_auto(10)
+blnet.turn_off(10)
+
+# Fetch data (contains all available data using enabled interfaces)
+print(blnet.fetch())
+
+
+
+# The low level modules are also available
+# note that the direct use of these modules is discouraged though
+
+# Fetch the latest data via web interface
+# Note that manual log in and log out are required
+# when not using the with statement
+with BLNETWeb(ip, password='pass', timeout=5) as blnet_session:
+ print(blnet_session.read_analog_values())
+ print(blnet_session.read_digital_values())
+
+ # For publishing values
+ blnet_session.set_digital_value('10', 'AUS')
+ # Note that without explicit log out,
+ # the BLNET will block any further web access for the next 150s
+ # this is handled automatically when using the with statement
+
+# Fetch data via the Protocol developed by TA
+blnet = BLNETDirect(ip)
+# Fetching the latest data
+print(blnet.get_latest())
+# Still inofficial because unexplicably failing often
+print(blnet._get_data(1))
+```
+
+
+[1] https://www.haus-terra.at/heizung/download/Schnittstelle/Schnittstelle_PC_Bootloader.pdf
+
+
+
+
+%package -n python3-PyBLNET
+Summary: Automate wireless communication to UVR1611 via BL-NET
+Provides: python-PyBLNET
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-PyBLNET
+# PyBLNET - a very basic python BL-NET bridge
+[![Build Status](https://travis-ci.com/nielstron/pyblnet.svg?branch=master)](https://travis-ci.com/nielstron/pyblnet)
+[![Coverage Status](https://coveralls.io/repos/github/nielstron/pyblnet/badge.svg?branch=master)](https://coveralls.io/github/nielstron/pyblnet?branch=master)
+
+A package that connects to the BL-NET that is connected itself to a UVR1611 device by Technische Alternative.
+It is able to read digital and analog values as well as to set switches to ON/OFF/AUTO.
+
+Documentation on the modules and their methods can be found with the methods and modules themselves.
+
+Two interfaces to BLNet exist and both are supported:
+- Webinterface - Class BLnetWeb
+- BLNet-Direct protocol [1] - Class BLNETDirect
+
+However, as of now, there is no testing on the BLNet-Direct protocol *of any kind*, so enabling it is discouraged until the interface is fixed.
+Parsing the data via the web interface is the preferred way of accessing the BLNet for now.
+
+The class BLNET is a wrapper around the two classes. When initializing the class, the two interfaces can be activated/deactivated.
+BLNetDirect provides 'analog', 'digital', 'speed', 'energy', 'power', whereas BLnetWeb supports 'analog' and 'digital' only.
+If both are active, BLNetDirect has priority.
+Setting switches and reading their manual/auto state is only possible via the BLNetWeb interface.
+
+### Usage
+
+```python
+from pyblnet import test_blnet, BLNET, BLNETWeb, BLNETDirect
+
+ip = '192.168.178.10'
+
+# Check if there is a blnet at given address
+test_blnet(ip) # -> True/False
+
+# Convenient high level interface
+blnet = BLNET(ip, password='pass', timeout=5)
+
+# Control a switch by its ID
+blnet.turn_on(10)
+blnet.turn_auto(10)
+blnet.turn_off(10)
+
+# Fetch data (contains all available data using enabled interfaces)
+print(blnet.fetch())
+
+
+
+# The low level modules are also available
+# note that the direct use of these modules is discouraged though
+
+# Fetch the latest data via web interface
+# Note that manual log in and log out are required
+# when not using the with statement
+with BLNETWeb(ip, password='pass', timeout=5) as blnet_session:
+ print(blnet_session.read_analog_values())
+ print(blnet_session.read_digital_values())
+
+ # For publishing values
+ blnet_session.set_digital_value('10', 'AUS')
+ # Note that without explicit log out,
+ # the BLNET will block any further web access for the next 150s
+ # this is handled automatically when using the with statement
+
+# Fetch data via the Protocol developed by TA
+blnet = BLNETDirect(ip)
+# Fetching the latest data
+print(blnet.get_latest())
+# Still inofficial because unexplicably failing often
+print(blnet._get_data(1))
+```
+
+
+[1] https://www.haus-terra.at/heizung/download/Schnittstelle/Schnittstelle_PC_Bootloader.pdf
+
+
+
+
+%package help
+Summary: Development documents and examples for PyBLNET
+Provides: python3-PyBLNET-doc
+%description help
+# PyBLNET - a very basic python BL-NET bridge
+[![Build Status](https://travis-ci.com/nielstron/pyblnet.svg?branch=master)](https://travis-ci.com/nielstron/pyblnet)
+[![Coverage Status](https://coveralls.io/repos/github/nielstron/pyblnet/badge.svg?branch=master)](https://coveralls.io/github/nielstron/pyblnet?branch=master)
+
+A package that connects to the BL-NET that is connected itself to a UVR1611 device by Technische Alternative.
+It is able to read digital and analog values as well as to set switches to ON/OFF/AUTO.
+
+Documentation on the modules and their methods can be found with the methods and modules themselves.
+
+Two interfaces to BLNet exist and both are supported:
+- Webinterface - Class BLnetWeb
+- BLNet-Direct protocol [1] - Class BLNETDirect
+
+However, as of now, there is no testing on the BLNet-Direct protocol *of any kind*, so enabling it is discouraged until the interface is fixed.
+Parsing the data via the web interface is the preferred way of accessing the BLNet for now.
+
+The class BLNET is a wrapper around the two classes. When initializing the class, the two interfaces can be activated/deactivated.
+BLNetDirect provides 'analog', 'digital', 'speed', 'energy', 'power', whereas BLnetWeb supports 'analog' and 'digital' only.
+If both are active, BLNetDirect has priority.
+Setting switches and reading their manual/auto state is only possible via the BLNetWeb interface.
+
+### Usage
+
+```python
+from pyblnet import test_blnet, BLNET, BLNETWeb, BLNETDirect
+
+ip = '192.168.178.10'
+
+# Check if there is a blnet at given address
+test_blnet(ip) # -> True/False
+
+# Convenient high level interface
+blnet = BLNET(ip, password='pass', timeout=5)
+
+# Control a switch by its ID
+blnet.turn_on(10)
+blnet.turn_auto(10)
+blnet.turn_off(10)
+
+# Fetch data (contains all available data using enabled interfaces)
+print(blnet.fetch())
+
+
+
+# The low level modules are also available
+# note that the direct use of these modules is discouraged though
+
+# Fetch the latest data via web interface
+# Note that manual log in and log out are required
+# when not using the with statement
+with BLNETWeb(ip, password='pass', timeout=5) as blnet_session:
+ print(blnet_session.read_analog_values())
+ print(blnet_session.read_digital_values())
+
+ # For publishing values
+ blnet_session.set_digital_value('10', 'AUS')
+ # Note that without explicit log out,
+ # the BLNET will block any further web access for the next 150s
+ # this is handled automatically when using the with statement
+
+# Fetch data via the Protocol developed by TA
+blnet = BLNETDirect(ip)
+# Fetching the latest data
+print(blnet.get_latest())
+# Still inofficial because unexplicably failing often
+print(blnet._get_data(1))
+```
+
+
+[1] https://www.haus-terra.at/heizung/download/Schnittstelle/Schnittstelle_PC_Bootloader.pdf
+
+
+
+
+%prep
+%autosetup -n PyBLNET-0.9.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-PyBLNET -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 0.9.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..cc968f5
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+3daae3b50a9c9027e13ba1cab826b71a PyBLNET-0.9.1.tar.gz