[](https://opensource.org/licenses/Apache-2.0)
[](https://crates.io/crates/vertx-eventbus-bridge)
[](https://codecov.io/gh/aesteve/vertx-eventbus-client-rs)
## Vert.x TCP EventBus client for Rust
Vert.x allows to expose its event-bus through a [TCP socket](https://vertx.io/docs/vertx-tcp-eventbus-bridge/java/).
This crate offers primitives in the Rust programming language to interact with the event bus over this TCP connection.
This allows to send messages from a Rust codebase (embedded sensors for instance) to a running Vert.x instance, or reacting to event bus messages published from the Vert.x application in a Rust codebase.
## Early stage
This project is still in early development phase, although it's available as a [crate](https://crates.io/crates/vertx-eventbus-bridge) if you need it.
The design (at the moment: iterators over incoming messages) is highly suggest to change.
Any proposition or technical comment is highly welcomed in the issues.
## Testing
In order to test the client against a "real" TCP Event-Bus bridge (and avoid observator-bias: testing my own understanding of the protocol), [this docker image](https://hub.docker.com/layers/aesteve/tests/mock-eventbus-server/images/sha256-90eff1e74362118b41ec7fc7a22ecd180a6c2c07206083dec9885d6b61edd24c?context=repo) is used, through testcontainers.
The code for this image can be found [here](https://github.com/aesteve/vertx-eventbus-mock-server), it's a simple Vert.x application listening/publishing to the Event-Bus and exposing it through TCP on port 7542.