Skip to content
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

Update MQTT 5 uTransport specification #135

Merged

Conversation

devkelley
Copy link
Contributor

@devkelley devkelley commented May 7, 2024

Based on conversations with the community and proposed updates to the uTransport spec, made the following changes:

  • Updated MQTT topics to utilize elements of source and sink UURI.
  • Added uTransport client types to allow for distinction between messages going to the cloud and to devices
  • Renamed adoc to mqtt_5 to reflect reliance on MQTT version 5 features.

up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
@devkelley devkelley marked this pull request as ready for review May 9, 2024 20:47
@sophokles73
Copy link
Contributor

sophokles73 commented May 15, 2024

In case you wonder why the verify-pr check does not finish: #143

up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
Copy link
Contributor

@stevenhartley stevenhartley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see only outstanding comments before it can be merged

up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
@stevenhartley
Copy link
Contributor

Based on our live discussion just now, we have concluded that in order to support notifications correctly (that will have source and sink addresses) we need to expand and update the MQTT5 topic to be the following:

{client_identifier}/{source.authority_name}/{source.ue_id}/{source.ue_version_major}/{source.resource_id}/{sink.authority_name}/{sink.ue_id}/{sink.ue_version_major}/{sink.resource_id}

Below are some examples using this updated notation:

  • Specific Publish Topic: d/{source.authority_name}/{source.ue_id}/{source.ue_version_major}/{source.resource_id}/////
  • All (incoming) requests to a specific Method (what a service would want to do): d/+/+/+/+/{sink.authority_name}/{sink.ue_id}/{sink.ue_version_major}/{sink.resource_id}
  • Streamer registering to receive any sent notifications, requests, or responses destine to its device:
    d/+/+/+/+/{sink.authority_name}/+/+/0
  • Specific Notification topic: d/{source.authority_name}/{source.ue_id}/{source.ue_version_major}/{source.resource_id}/{sink.authority_name}/{sink.ue_id}/{sink.ue_version_major}/0

Copy link
Contributor

@stevenhartley stevenhartley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some links changed when I moved the protos on my last commit (sorry @devkelley )

up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
up-l1/mqtt_5.adoc Outdated Show resolved Hide resolved
Copy link
Contributor

@stevenhartley stevenhartley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@stevenhartley stevenhartley merged commit 8344110 into eclipse-uprotocol:main May 22, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants