apache / apache/iggy

feat(connectors): Implement MQTT source & sink

Open
#3,385 7 comments 0 reactions 1 assignee Claimed by @ygndotgg View on GitHub
connectors
Dominant language
Rust
Stars
4.9k
Forks
432
Avg merge
2d 10h
Merged PRs (30d)
173

Description

### Description

In order to get iggy connectors on a broader range of devices, i'm proposing to implement the MQTT protocol for both sources & sinks.

### Affected area / component

Connectors

### Proposed solution

I've did some research on Rust crates for the MQTT protocol, and the most reliable ( along with continuous maintenance ) seems to be [flowsdk](https://github.com/emqx/flowsdk/tree/main). I've made a sink MVP with the sink target being a rabbitmq MQTT endpoint (with mqtt 5) and it works as expected:

Image
Image

So the idea would be:

- Implement both Sink and Source with MQTT 5
- Allow for MQTT 3 after MQTT 5 is valid ( the sdk allow for both )

### Alternatives considered

_No response_

### Contribution

- [x] I'm willing to submit a pull request to implement this feature

### Good first issue

- [ ] I think this could be a good first issue for a new contributor

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.