%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 - 0.4.10-1 - Package Spec generated