-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MQTT transport enhancement: compliance with MQTT v5 standard message properties #1872
Comments
I guess this is related to the discussion in #1844? |
This issue sums up ideas described in the last post of the PR. The proposal doesn't prevent anyone of using correlation ID in payload, it just makes it possible to utilize full potential of MQTT transport. Since all the changes on the transport level, that doesn't affect work of Janus application plugins in any way. It just adds more convenience to MQTT users (that allows to use request/response feature of modern MQTT clients). |
I'm more concerned about people using the MQTT transport from their application right now: I suspect these changes would break the way they communicate with the plugin right now, as I guess they might be expecting a message on one topic and it might arrive on another. As long as these changes are optional and configurable (and, if they break backwards compatibility, disabled by default at least for the time being), it's fine by me. Just as for the other issue, though, this isn't something we plan to work on ourselves, sorry. |
There couldn't be any issues with backward compatibility because sending the response topic property in a request only makes sense if you expected a response on a different topic. So, current users of the MQTT plugin won't be affected.
We'll prepare a PR in the nearest future. Thanks. |
Thanks, this makes it much clearer, especially since I know so little about MQTT so this helps! |
The PR is merged so I guess this issue can be closed. |
The MQTT v5 has got support of request/response message pattern. For that reason, message properties such as: "response_topic" and "correlation_date" were introduced. Any client that supports MQTT v5 standard now is able to utilize request/response message pattern out the box. At the same time, the choice fully on client side and client applications can continue using their own ways to correlate requests and responses on top of async pub/sub messages.
The proposal is to add a support for the new clear way of communication over MQTT, that's now available by modern clients with the support of MQTT v5 standard.
What we can do:
push_event
a "transaction" is known, so we may find a record in the internal state.That's may be important to mention that:
Specs:
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901115
https://docs.oasis-open.org/mqtt/mqtt/v5.0/os/mqtt-v5.0-os.html#_Toc3901114
The text was updated successfully, but these errors were encountered: