William Pitcock 812e4e7846 add README file 1 year ago
asyncmqtt client: don't truncate incomplete packets 1 year ago
tests packet: add parser for PUBLISH message 1 year ago
.gitignore initial commit 1 year ago
COPYING COPYING: mention HBMQTT license for the parsers 1 year ago
README.rst add README file 1 year ago
client.py add a very simple example client 1 year ago

README.rst

asyncmqtt -- a fast MQTT client library for Python/asyncio
==========================================================

**asyncmqtt** is a client library designed specifically to run as an asyncio Protocol.
asyncmqtt is a clean, efficient design which borrows the MQTT protocol parsers from
`HBMQTT `_ and combines them with a new implementation
built around ``asyncio.Protocol``.

asyncmqtt requires Python 3.5 or later and presently supports basic MQTT features (QoS 0/1, but
not yet QoS 2). It is intended to be a "low level" type interface: your application should fully
handle the logistics of actually processing the messages, unlike HBMQTT.


Performance
-----------

In my testing asyncmqtt is roughly 4 to 5 times faster than HBMQTT for the most common usecase
(processing ``PUBLISH`` message streams).