summaryrefslogtreecommitdiff
path: root/python-iot-io.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-06-20 04:40:02 +0000
committerCoprDistGit <infra@openeuler.org>2023-06-20 04:40:02 +0000
commit11798860e53a1ce5f64b763cf69f4d4c971092de (patch)
treef6366b8e397ba3ff77c44a85a419505d69212e06 /python-iot-io.spec
parent75dff6eef2a5ded0e118d04504a236961c5e3358 (diff)
automatic import of python-iot.ioopeneuler20.03
Diffstat (limited to 'python-iot-io.spec')
-rw-r--r--python-iot-io.spec268
1 files changed, 268 insertions, 0 deletions
diff --git a/python-iot-io.spec b/python-iot-io.spec
new file mode 100644
index 0000000..e1add19
--- /dev/null
+++ b/python-iot-io.spec
@@ -0,0 +1,268 @@
+%global _empty_manifest_terminate_build 0
+Name: python-iot.io
+Version: 0.4.10
+Release: 1
+Summary: A management API for connecting and managing Clients via websocket connections.
+License: MIT
+URL: https://github.com/dylancrockett/iot.io
+Source0: https://mirrors.aliyun.com/pypi/web/packages/85/2f/2ff542d1f6c4dc81cff3830438dc40ab6754d2cee286b8f6eb5d7d854041/iot.io-0.4.10.tar.gz
+BuildArch: noarch
+
+Requires: python3-gevent
+Requires: python3-gevent-websocket
+Requires: python3-flask
+Requires: python3-flask-sockets
+
+%description
+# iot.io Server
+### iot.io Overview
+This project aims to create a lightweight and intuitive system for connecting
+IoT devices to a central server for small IoT system implementations and hobbyists.
+
+The framework focuses on providing easy to use system of libraries so the end user does
+not need to understand the protocol implementation, though this also is fairly simple.
+
+The format of the framework is somewhat reminiscent of [Socket.IO](https://socket.io/)
+where handlers functions are defined and executed and run as events are triggered.
+
+
+### Quickstart Guide (Server)
+This is an example of a simple IoTManager instance which accepts a "EhcoClient"
+and will print every message the client sends out to console.
+
+```python
+from flask import Flask
+from iotio import IoTManager, DeviceType, IoTClient
+from eventlet import wsgi
+import eventlet
+"""
+Example implementation of a Echo server.
+
+Defines an EchoClient of type 'echo'.
+Works with the corresponding 'echo' iot.io-client example.
+"""
+
+# create a flask app
+app = Flask("Echo Example")
+
+# create an instance of the IoTManager
+manager = IoTManager(app)
+
+
+# define the EchoClient device
+class EchoClient(DeviceType):
+ def on_connect(self, client: IoTClient):
+ print("EchoClient Connected! ID: " + client.id)
+
+ # define a handler for when the client receives a "echo" event
+ def on_echo(self, message: str, client: IoTClient):
+ print("Message from Client of type '" + self.type + "' with ID '" + client.id + "': '", message, "'")
+
+ # respond to client with the 'echo_response' event
+ return "echo_response", message
+
+ def on_disconnect(self, client: IoTClient):
+ print("EchoClient Disconnected! ID: " + client.id)
+
+
+# add the device type to the manager
+manager.add_type(EchoClient("echo"))
+
+# run the server using eventlet
+if __name__ == "__main__":
+ wsgi.server(eventlet.listen(('0.0.0.0', 5000)), app)
+```
+
+If you would like to see the matching quickstart guide for an example
+client go [here](https://github.com/dylancrockett/iot.io-client).
+
+
+
+
+
+%package -n python3-iot.io
+Summary: A management API for connecting and managing Clients via websocket connections.
+Provides: python-iot.io
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-iot.io
+# iot.io Server
+### iot.io Overview
+This project aims to create a lightweight and intuitive system for connecting
+IoT devices to a central server for small IoT system implementations and hobbyists.
+
+The framework focuses on providing easy to use system of libraries so the end user does
+not need to understand the protocol implementation, though this also is fairly simple.
+
+The format of the framework is somewhat reminiscent of [Socket.IO](https://socket.io/)
+where handlers functions are defined and executed and run as events are triggered.
+
+
+### Quickstart Guide (Server)
+This is an example of a simple IoTManager instance which accepts a "EhcoClient"
+and will print every message the client sends out to console.
+
+```python
+from flask import Flask
+from iotio import IoTManager, DeviceType, IoTClient
+from eventlet import wsgi
+import eventlet
+"""
+Example implementation of a Echo server.
+
+Defines an EchoClient of type 'echo'.
+Works with the corresponding 'echo' iot.io-client example.
+"""
+
+# create a flask app
+app = Flask("Echo Example")
+
+# create an instance of the IoTManager
+manager = IoTManager(app)
+
+
+# define the EchoClient device
+class EchoClient(DeviceType):
+ def on_connect(self, client: IoTClient):
+ print("EchoClient Connected! ID: " + client.id)
+
+ # define a handler for when the client receives a "echo" event
+ def on_echo(self, message: str, client: IoTClient):
+ print("Message from Client of type '" + self.type + "' with ID '" + client.id + "': '", message, "'")
+
+ # respond to client with the 'echo_response' event
+ return "echo_response", message
+
+ def on_disconnect(self, client: IoTClient):
+ print("EchoClient Disconnected! ID: " + client.id)
+
+
+# add the device type to the manager
+manager.add_type(EchoClient("echo"))
+
+# run the server using eventlet
+if __name__ == "__main__":
+ wsgi.server(eventlet.listen(('0.0.0.0', 5000)), app)
+```
+
+If you would like to see the matching quickstart guide for an example
+client go [here](https://github.com/dylancrockett/iot.io-client).
+
+
+
+
+
+%package help
+Summary: Development documents and examples for iot.io
+Provides: python3-iot.io-doc
+%description help
+# iot.io Server
+### iot.io Overview
+This project aims to create a lightweight and intuitive system for connecting
+IoT devices to a central server for small IoT system implementations and hobbyists.
+
+The framework focuses on providing easy to use system of libraries so the end user does
+not need to understand the protocol implementation, though this also is fairly simple.
+
+The format of the framework is somewhat reminiscent of [Socket.IO](https://socket.io/)
+where handlers functions are defined and executed and run as events are triggered.
+
+
+### Quickstart Guide (Server)
+This is an example of a simple IoTManager instance which accepts a "EhcoClient"
+and will print every message the client sends out to console.
+
+```python
+from flask import Flask
+from iotio import IoTManager, DeviceType, IoTClient
+from eventlet import wsgi
+import eventlet
+"""
+Example implementation of a Echo server.
+
+Defines an EchoClient of type 'echo'.
+Works with the corresponding 'echo' iot.io-client example.
+"""
+
+# create a flask app
+app = Flask("Echo Example")
+
+# create an instance of the IoTManager
+manager = IoTManager(app)
+
+
+# define the EchoClient device
+class EchoClient(DeviceType):
+ def on_connect(self, client: IoTClient):
+ print("EchoClient Connected! ID: " + client.id)
+
+ # define a handler for when the client receives a "echo" event
+ def on_echo(self, message: str, client: IoTClient):
+ print("Message from Client of type '" + self.type + "' with ID '" + client.id + "': '", message, "'")
+
+ # respond to client with the 'echo_response' event
+ return "echo_response", message
+
+ def on_disconnect(self, client: IoTClient):
+ print("EchoClient Disconnected! ID: " + client.id)
+
+
+# add the device type to the manager
+manager.add_type(EchoClient("echo"))
+
+# run the server using eventlet
+if __name__ == "__main__":
+ wsgi.server(eventlet.listen(('0.0.0.0', 5000)), app)
+```
+
+If you would like to see the matching quickstart guide for an example
+client go [here](https://github.com/dylancrockett/iot.io-client).
+
+
+
+
+
+%prep
+%autosetup -n iot.io-0.4.10
+
+%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-iot.io -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 0.4.10-1
+- Package Spec generated