2016-03-11 21:55:33 +00:00
|
|
|
Eclipse Mosquitto
|
|
|
|
=================
|
2015-06-03 14:37:41 +00:00
|
|
|
|
2019-04-26 11:41:50 +00:00
|
|
|
Mosquitto is an open source implementation of a server for version 5.0, 3.1.1,
|
|
|
|
and 3.1 of the MQTT protocol. It also includes a C and C++ client library, and
|
2016-07-05 20:38:57 +00:00
|
|
|
the `mosquitto_pub` and `mosquitto_sub` utilities for publishing and
|
|
|
|
subscribing.
|
|
|
|
|
|
|
|
## Links
|
2015-06-03 14:37:41 +00:00
|
|
|
|
|
|
|
See the following links for more information on MQTT:
|
|
|
|
|
|
|
|
- Community page: <http://mqtt.org/>
|
2019-03-30 20:34:40 +00:00
|
|
|
- MQTT v3.1.1 standard: <https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/mqtt-v3.1.1.html>
|
|
|
|
- MQTT v5.0 standard: <https://docs.oasis-open.org/mqtt/mqtt/v5.0/mqtt-v5.0.html>
|
2015-06-03 14:37:41 +00:00
|
|
|
|
|
|
|
Mosquitto project information is available at the following locations:
|
|
|
|
|
2019-03-30 20:34:40 +00:00
|
|
|
- Main homepage: <https://mosquitto.org/>
|
2016-03-11 21:55:33 +00:00
|
|
|
- Find existing bugs or submit a new bug: <https://github.com/eclipse/mosquitto/issues>
|
|
|
|
- Source code repository: <https://github.com/eclipse/mosquitto>
|
2015-06-03 14:37:41 +00:00
|
|
|
|
2019-03-30 20:34:40 +00:00
|
|
|
There is also a public test server available at <https://test.mosquitto.org/>
|
2015-06-03 14:37:41 +00:00
|
|
|
|
2016-07-05 20:38:57 +00:00
|
|
|
## Installing
|
|
|
|
|
2019-03-30 20:34:40 +00:00
|
|
|
See <https://mosquitto.org/download/> for details on installing binaries for
|
2016-07-05 20:38:57 +00:00
|
|
|
various platforms.
|
|
|
|
|
|
|
|
## Quick start
|
|
|
|
|
|
|
|
If you have installed a binary package the broker should have been started
|
|
|
|
automatically. If not, it can be started with a basic configuration:
|
|
|
|
|
|
|
|
mosquitto
|
|
|
|
|
|
|
|
Then use `mosquitto_sub` to subscribe to a topic:
|
|
|
|
|
|
|
|
mosquitto_sub -t 'test/topic' -v
|
|
|
|
|
|
|
|
And to publish a message:
|
|
|
|
|
|
|
|
mosquitto_pub -t 'test/topic' -m 'hello world'
|
|
|
|
|
|
|
|
## Documentation
|
|
|
|
|
|
|
|
Documentation for the broker, clients and client library API can be found in
|
2019-03-30 20:34:40 +00:00
|
|
|
the man pages, which are available online at <https://mosquitto.org/man/>. There
|
2016-07-05 20:38:57 +00:00
|
|
|
are also pages with an introduction to the features of MQTT, the
|
|
|
|
`mosquitto_passwd` utility for dealing with username/passwords, and a
|
|
|
|
description of the configuration file options available for the broker.
|
|
|
|
|
2019-03-30 20:34:40 +00:00
|
|
|
Detailed client library API documentation can be found at <https://mosquitto.org/api/>
|
2016-07-05 20:38:57 +00:00
|
|
|
|
|
|
|
## Building from source
|
|
|
|
|
|
|
|
To build from source the recommended route for end users is to download the
|
2019-03-30 20:34:40 +00:00
|
|
|
archive from <https://mosquitto.org/download/>.
|
2016-07-05 20:38:57 +00:00
|
|
|
|
|
|
|
On Windows and Mac, use `cmake` to build. On other platforms, just run `make`
|
2019-08-01 09:34:56 +00:00
|
|
|
to build. For Windows, see also `readme-windows.txt`.
|
2016-07-05 20:38:57 +00:00
|
|
|
|
|
|
|
If you are building from the git repository then the documentation will not
|
|
|
|
already be built. Use `make binary` to skip building the man pages, or install
|
|
|
|
`docbook-xsl` on Debian/Ubuntu systems.
|
|
|
|
|
|
|
|
### Build Dependencies
|
|
|
|
|
2019-04-26 11:41:50 +00:00
|
|
|
* c-ares (libc-ares-dev on Debian based systems) - only when compiled with `make WITH_SRV=yes`
|
2017-05-05 21:14:46 +00:00
|
|
|
* libwebsockets (libwebsockets-dev) - enable with `make WITH_WEBSOCKETS=yes`
|
2016-07-05 20:38:57 +00:00
|
|
|
* openssl (libssl-dev on Debian based systems) - disable with `make WITH_TLS=no`
|
2018-01-12 13:45:37 +00:00
|
|
|
* xsltproc (xsltproc and docbook-xsl on Debian based systems) - only needed when building from git sources - disable with `make WITH_DOCS=no`
|
2019-04-26 11:41:50 +00:00
|
|
|
* uthash / utlist - bundled versions of these headers are provided, disable their use with `make WITH_BUNDLED_DEPS=no`
|
2019-10-15 10:59:22 +00:00
|
|
|
* cJSON - for client JSON output support. Disable with `make WITH_CJSON=no` Auto detected with CMake.
|
2019-04-26 11:41:50 +00:00
|
|
|
|
|
|
|
Equivalent options for enabling/disabling features are available when using the CMake build.
|
|
|
|
|
2016-07-05 20:38:57 +00:00
|
|
|
|
|
|
|
## Credits
|
|
|
|
|
2015-06-03 14:37:41 +00:00
|
|
|
Mosquitto was written by Roger Light <roger@atchoo.org>
|
2016-03-11 22:01:02 +00:00
|
|
|
|
|
|
|
Master: [![Travis Build Status (master)](https://travis-ci.org/eclipse/mosquitto.svg?branch=master)](https://travis-ci.org/eclipse/mosquitto)
|
|
|
|
Develop: [![Travis Build Status (develop)](https://travis-ci.org/eclipse/mosquitto.svg?branch=develop)](https://travis-ci.org/eclipse/mosquitto)
|
|
|
|
Fixes: [![Travis Build Status (fixes)](https://travis-ci.org/eclipse/mosquitto.svg?branch=fixes)](https://travis-ci.org/eclipse/mosquitto)
|