gmqtt: Python async MQTT client implementation
gmqtt
gmqtt: Python async MQTT client implementation.
Installation
The latest stable version is available in the Python Package Index (PyPi) and can be installed using
pip3 install gmqtt
Usage
Getting Started
Here is a very simple example that subscribes to the broker TOPIC topic and prints out the resulting messages:
import asyncio
import os
import signal
import time
from gmqtt import Client as MQTTClient
# gmqtt also compatibility with uvloop
import uvloop
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
STOP = asyncio.Event()
def on_connect(client, flags, rc, properties):
print('Connected')
client.subscribe('TEST/#', qos=0)
def on_message(client, topic, payload, qos, properties):
print('RECV MSG:', payload)
def on_disconnect(client, packet, exc=None):
print('Disconnected')
def on_subscribe(client, mid, qos, properties):
print('SUBSCRIBED')
def ask_exit(*args):
STOP.set()
async def main(broker_host, token):
client = MQTTClient("client-id")
client.on_connect = on_connect
client.on_message = on_message
client.on_disconnect = on_disconnect
client.on_subscribe =