https://github.com/vert-x3/vertx-mqtt-server
Vert.x MQTT
https://github.com/vert-x3/vertx-mqtt-server
client iot mqtt reactive rxjava rxjava2 server vertx
Last synced: about 1 month ago
JSON representation
Vert.x MQTT
- Host: GitHub
- URL: https://github.com/vert-x3/vertx-mqtt-server
- Owner: vert-x3
- License: apache-2.0
- Created: 2016-09-29T08:35:24.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2025-02-12T09:52:10.000Z (2 months ago)
- Last Synced: 2025-03-17T14:51:22.525Z (about 1 month ago)
- Topics: client, iot, mqtt, reactive, rxjava, rxjava2, server, vertx
- Language: Java
- Homepage:
- Size: 1.11 MB
- Stars: 195
- Watchers: 34
- Forks: 91
- Open Issues: 43
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Vert.x MQTT
[](https://github.com/vert-x3/vertx-mqtt/actions/workflows/ci-5.x.yml)
[](https://github.com/vert-x3/vertx-mqtt/actions/workflows/ci-4.x.yml)This project provides the following two different components :
* **server** : it's able to handle connections, communication and messages exchange with remote [MQTT](http://mqtt.org/) clients.
Its API provides a bunch of events related to raw protocol messages received by clients and exposes some functionalities in order to send messages to them.
It's not a fully featured MQTT broker but can be used for building something like that or for protocol translation (MQTT <--> ?).
* **client** : it's an [MQTT](http://mqtt.org/) client which is compliant with the 3.1.1 spec. Its API provides a bunch of methods
for connecting/disconnecting to a broker, publishing messages (with all three different levels of QoS) and subscribing to topics.See the in-source docs for more details:
- [Website](http://vertx.io/docs/#mqtt).
- [Sources](src/main/asciidoc/index.adoc).Some examples are available for getting started with the server under the [vertx-examples](https://github.com/vert-x3/vertx-examples/tree/master/mqtt-examples) project.
## Running tests
Run all tests. The client is tested with the `mqtt.eclipse.org` server.
```
> mvn verify
```Run all tests. The client is tested with a Docker container started by Maven on the `1884` port
```
> mvn verify -Plocal_test
```Like above but with an manual Docker container start/stop.
```
> docker run -d -p 1884:1883 ansi/mosquitto
> mvn verify -Dmqtt.server.host=localhost -Dmqtt.server.port=1884
```