MQTT Client Library for Julia
This library provides a MQTT Client and functions for interfacing with a standard MQTT broker. This includes publishing messages, and subscribing to topics to receive published messages. See the documentation for more information.
This package supports using Transmission Control Protocol (TCP) as well as Unix Domain Sockets (UDS) as the protocol to connect to the MQTT broker over. An example configuration for a Mosquitto
broker can be found in the test folder.
An example of how this package can be used is in the examples/basic.jl file.
This package is using MQTT protocol v3.1.1.
If you would like to contribute to the project, please submit a PR. All contributions are welcomed and appreciated.
This work is based on the MQTT.jl packages created by femtomic and rweilbacher, and a lot of credit is due to their work along with the other contributors to those repositories.
- protocol error handling
- reconnect
- persistence (in memory, files)
- look at enums and how to use them
- qos2
- separate handle_pubrecrel into two different methods and fix them
- review connect method
- make it not hardcoded
- disconnect_async/disconnect
- think about what we need to do and how
- the reconnect should still work
- implement clean session = false
- investigate adding global on_msg handler option back
- investigate using MQTT v5.0