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 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.
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.
Metadata
Release files for iot.io 0.4.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| iot.io-0.4.10.tar.gz | 19.7 kB | Without provenance | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iot.io-0.4.10-py3.8.egg | Legacy Egg format | - | - | Details |
| iot.io-0.4.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 69.7 kB
Release files / iot.io-0.4.10.tar.gz
| Download URL | iot.io-0.4.10.tar.gz |
|---|---|
| Size | 19.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f71269d58e0e736d413338bddf01fdd4dab90a97db7142c77f6f78a93814ddaa
|
|
BLAKE2b-256 checksum How to use checksums |
852f2ff542d1f6c4dc81cff3830438dc40ab6754d2cee286b8f6eb5d7d854041
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1
|
Release files / iot.io-0.4.10-py3.8.egg
| Download URL | iot.io-0.4.10-py3.8.egg |
|---|---|
| Size | 24.3 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
386fb24e83d09be34ef79e0040980b04c7af98ec585e0da23084b7712a27d359
|
|
BLAKE2b-256 checksum How to use checksums |
e96bcce545d22d6b6431103705c647ade7ab0a2072a6f45b0c47f09a9f4016ea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1
|
Release files / iot.io-0.4.10-py3-none-any.whl
| Download URL | iot.io-0.4.10-py3-none-any.whl |
|---|---|
| Size | 25.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
429f85acc636eb39ed1ee2cd7ef5783775a7b94941ba345de9e4d9e9e7a947d3
|
|
BLAKE2b-256 checksum How to use checksums |
965576af36678f08e266ff90ea3ea66e814552f15fe32e1672a90d315c6d747c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.8.1
|
Security for iot.io 0.4.10
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.