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 消息代理(Broker)实现,支持 MQTT 协议 5.0、3.1.1 和 3.1 版本,用于设备之间的轻量级消息传递。
这只是服务端,还是也包含客户端工具?它主要是一个独立运行的消息代理(服务端),但项目还包含 C 和 C++ 客户端库,以及用于发布消息、订阅消息和管理代理的命令行工具。
我该如何让代理运行起来?使用随附的 Makefiles 从源代码编译(根据仓库配置,项目使用 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