Python's asyncio-native MQTT broker and client.
Project description
aMQTT is an open source MQTT broker and client[^1], natively implemented with Python's asyncio.
Features
-
Full set of MQTT 3.1.1 protocol specifications
-
Communication over multiple TCP and/or websocket ports, including support for SSL/TLS
-
Support QoS 0, QoS 1 and QoS 2 messages flow
-
Client auto-reconnection on network lost
-
Plugin framework for functionality expansion; included plugins:
$SYStopic publishing- AWS IOT-style shadow states
- x509 certificate authentication (including cli cert creation)
- Secure file-based password authentication
- Configuration-based topic authorization
- MySQL, Postgres & SQLite user and/or topic auth (including cli manager)
- External server (HTTP) user and/or topic auth
- LDAP user and/or topic auth
- JWT user and/or topic auth
- Fail over session persistence
Installation
amqtt is available on PyPI
$ pip install amqtt
Documentation
Available on Read the Docs.
Containerization
Launch from DockerHub
$ docker run -d -p 1883:1883 amqtt/amqtt:latest
Testing
The amqtt project runs a test aMQTT broker/server at test.amqtt.io which supports: MQTT, MQTT over TLS, websocket, secure websockets.
Support
Bug reports, patches and suggestions welcome! Just open an issue or join the discord community.
Python Version Compatibility
| Version | hbmqtt compatibility | Supported Python Versions |
|---|---|---|
| 0.10.x | yes [^2] | 3.7 - 3.9 |
| 0.11.x | no [^3] | 3.10 - 3.13 |
[^1]: Forked from HBMQTT after it was deprecated by the original author.
[^2]: drop-in replacement
[^3]: module renamed and small API differences
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file amqtt-0.11.3.tar.gz.
File metadata
- Download URL: amqtt-0.11.3.tar.gz
- Upload date:
- Size: 88.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8818bc3037ac027368228098852007c0a77e367fc11389c1405169618d4c8b8b
|
|
| MD5 |
3bdca68ddc5a91f78df6a1ab2998d45c
|
|
| BLAKE2b-256 |
3c52329c655644b6ffc36fb15a49bd245dec31bb45a91f1c8291c84b84fa1695
|
File details
Details for the file amqtt-0.11.3-py3-none-any.whl.
File metadata
- Download URL: amqtt-0.11.3-py3-none-any.whl
- Upload date:
- Size: 118.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c774eb68087fe8cda17b7e9d40a8016ea782ba637c272d97df86bf1cd23c658d
|
|
| MD5 |
8a8423ba9090812e744fad632584f518
|
|
| BLAKE2b-256 |
9395d484a1bcb22868247bbbb3c3a61c7f4dd6713e92052e862ac2b6873ca3b0
|