mqtt_decorator is a decorator module which converts mqtt subscriptions and messages to a Flask like api.
Project description
mqtt_decorator
mqtt_decorator is a decorator module which converts mqtt subscriptions and messages to a Flask like api.
Installing
The package can be installed via pip
pip install mqtt_decorator
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 mqtt_decorator python=3.8
Activate virtual environment
conda activate mqtt_decorator
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
File details
Details for the file mqtt_decorator-0.1.4.tar.gz
.
File metadata
- Download URL: mqtt_decorator-0.1.4.tar.gz
- Upload date:
- Size: 22.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ee6384fc09d3bd08e1b8caab99aabc44f20bba5f0ce42f0baa6617c0f2d995f6 |
|
MD5 | e43aa66c6d1a55072e41bfc2be279bfc |
|
BLAKE2b-256 | f4d8e097b4a5e4e40bae13f4aee059715e5e2abe0a73068f1539848cd7165d94 |
File details
Details for the file mqtt_decorator-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: mqtt_decorator-0.1.4-py3-none-any.whl
- Upload date:
- Size: 17.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4184f3f8831092fa01860040ca805b88d4e1e3e4a3bb5118afcce1d17a36e73b |
|
MD5 | b0961973d124abe303741714a9b14ac4 |
|
BLAKE2b-256 | 3c4e2154fff5f7236e6eb3f380b0a0aacc9018db620e9c5c45c72b743feb9c1f |