mqtt_decorator is a decorator module which converts mqtt subscriptions and messages to a [Flask](https://flask.palletsprojects.com/en/1.1.x/) like api.
Project description
mqtt_decorator
mqtt_decorator is a decorator module which converts mqtt subscriptions and messages to a Flask like api.
Installing
Demo
from mqtt_decorator import MqttDecorator
import paho.mqtt.client as mqtt
# you can specify all
# paho mqtt client options
# such as websocket connections or
# tls connections
mqttc = mqtt.Client(clean_session=True)
app = MqttDecorator(mqttc)
@app.route("$SYS/<broker>/<type>")
def broker_url_params(msg, broker, type):
print("---broker_url_params", msg.topic, msg.payload)
print("--broker", broker)
print("--type", type)
@app.route("$SYS/broker/version")
def version(msg):
print("---version", msg.topic, msg.payload)
@app.route("$SYS/broker/uptime")
def uptime(msg):
print("---uptime", msg.topic, msg.payload)
if __name__ == "__main__":
app.run( "mqtt.eclipse.org", 1883 )
Development
In this repo issue based development is active. For any problems or new enhancements please open a issue.
Create virtual environment (It should be done only for first installation)
conda create -n py38 python=3.8
Activate virtual environment
conda activate py38
Install this package
pip install -e .
Autopep8 is used for formatting.
autopep8 -r -i mqtt_decorator test
Pylint is used for linting.
pylint mqtt_decorator
Docs
for the first time
sphinx-apidoc -F mqtt_decorator -o docs/source
just update the auto docs
sphinx-apidoc -f mqtt_decorator -o docs/source
Deployment
The following 2 commands are required to deploy over pypi.
python setup.py sdist bdist_wheel
twine upload --repository-url https://upload.pypi.org/legacy/ dist/*
Licence
GPL
Acknowledges
This package is developed using
- Python <3
- Paho-Mqtt Heavily inspired from
- Flask
Contributors
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mqtt_decorator-0.1.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7a126325fdcbf5217db9d138aab9b30bc57c6f3a7b94248451bc3ca61ae2c9f4 |
|
MD5 | 5a1798c698196622c434d7f21601e7fa |
|
BLAKE2b-256 | 81fbf427901331f4d92ae7e265fc79d244c85d0cfb7fc56f1a873a8f87f98bb7 |