Metadata-Version: 1.1
Name: gmqtt
Version: 0.0.9
Summary: Client for MQTT protocol
Home-page: https://github.com/wialon/gmqtt
Author: Mikhail Turchunovich
Author-email: mitu@gurtam.com
License: UNKNOWN
Download-URL: https://github.com/wialon/gmqtt
Description: ### Python MQTT client implementation.
        
        
        ### Installation 
        
        The latest stable version is available in the Python Package Index (PyPi) and can be installed using
        ```bash
        pip install gmqtt
        ```
        
        
        ### Usage
        #### Getting Started
        
        Here is a very simple example that subscribes to the broker TOPIC topic and prints out the resulting messages:
        
        ```python
        import asyncio
        import os
        import signal
        
        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):
            print('Connected')
            client.subscribe('TEST/#', qos=0)
        
        
        def on_message(client, topic, payload, qos):
            print('RECV MSG:', payload)
        
        
        def on_disconnect(client, packet):
            print('Disconnected')
        
        
        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.set_auth_credentials(token, None)
            await client.connect(broker_host)
        
            await STOP.wait()
            await client.disconnect()
        
        
        if __name__ == '__main__':
            loop = asyncio.get_event_loop()
        
            host = 'mqtt.flespi.io'
            token = os.environ.get('FLESPI_TOKEN')
        
            loop.add_signal_handler(signal.SIGINT, ask_exit)
            loop.add_signal_handler(signal.SIGTERM, ask_exit)
        
            loop.run_until_complete(main(host, token))
        ``` 
        
Keywords: Gurtam MQTT client.
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Software Development :: Libraries :: Python Modules
