mosquitto README

The project's README from github.com/eclipse-mosquitto/mosquitto. As one markdown file: README.md.

Eclipse Mosquitto

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, the mosquitto_pub mosquitto_rr, and mosquitto_sub utilities for publishing and subscribing, and the mosquitto_ctrl, mosquitto_signal, and mosquitto_passwd applications for helping administer the broker.

See the following links for more information on MQTT:

Mosquitto project information is available at the following locations:

There is also a public test server available at https://test.mosquitto.org/

Installing

See https://mosquitto.org/download/ for details on installing binaries for 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 very 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'

Note that starting the broker like this allows anonymous/unauthenticated access but only from the local computer, so it's only really useful for initial testing.

If you want to have clients from another computer connect, you will need to provide a configuration file. If you have installed from a binary package, you will probably already have a configuration file at somewhere like /etc/mosquitto/mosquitto.conf. If you've compiled from source, you can write your config file then run as mosquitto -c /path/to/mosquitto.conf.

To start your config file you define a listener and you will need to think about what authentication you require. It is not advised to run your broker with anonymous access when it is publicly available.

For details on how to do this, look at the authentication methods available and the dynamic security plugin.

Documentation

Documentation for the broker, clients and client library API can be found in the man pages, which are available online at https://mosquitto.org/man/. There 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.

Detailed client library API documentation can be found at https://mosquitto.org/api/

Building from source

To build from source the recommended route for end users is to download the archive from https://mosquitto.org/download/.

On Windows and Mac, use cmake to build. On other platforms, just run make to build. For Windows, see also README-windows.md.

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

Equivalent options for enabling/disabling features are available when using the CMake build. It is also possible to enable/disable building of specific plugins in the CMake build.

Building mosquitto - Using vcpkg

You can download and install mosquitto using the vcpkg dependency manager:

git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
./bootstrap-vcpkg.sh
./vcpkg integrate install
./vcpkg install mosquitto

The mosquitto port in vcpkg is kept up to date by Microsoft team members and community contributors. If the version is out of date, please create an issue or pull request on the vcpkg repository.

Credits

Mosquitto was written by Roger Light [email protected]. There have been substantial contributions by other people in the community both in terms of code and other help.

mosquitto (eclipse-mosquitto/mosquitto)

Searching Database…

11.3K ·GitHub
Что это такое?Mosquitto — это брокер MQTT с открытым исходным кодом, поддерживающий версии протокола MQTT 5.0, 3.1.1 и 3.1. Он используется для передачи легковесных сообщений между устройствами.
Это только сервер или здесь есть и клиентские инструменты?В первую очередь это автономный брокер (сервер), но в проект также входят клиентская библиотека на C и C++ и утилиты командной строки для публикации и подписки на сообщения, а также для администрирования брокера.
Как запустить брокер?Соберите его из исходников с помощью входящих в проект Makefile (в репозитории используется Make, а не альтернативная система сборки).
Что нужно для сборки?Сборка выполняется через Make, а в репозитории также есть инструменты на Python, входящие в состав настройки для разработки и тестирования.
Кто обычно использует такой брокер MQTT?Разработчики и администраторы, которые создают системы интернета вещей и обмена сообщениями и которым нужна легковесная связь по схеме «публикация/подписка» между устройствами.
Для чего нужны mosquitto_pub и mosquitto_sub?Это входящие в проект клиентские утилиты командной строки, которые используются для публикации сообщений в топики и подписки на них на брокере MQTT.
Для чего используется mosquitto_passwd?Это административная утилита, входящая в проект, для управления файлами паролей, которые используются для аутентификации клиентов, подключающихся к брокеру.
Привязан ли это к какой-то конкретной платформе для интернета вещей?Нет, это брокер MQTT общего назначения. При этом он входит в семейство проектов Eclipse IoT, о чём говорит тема 'eclipse-iot'.
Size
17.9 MB
Stars
11.3K
Updated
CommitOct 04
Age
10y
Commits · 90 Days