Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "BaSyx / Documentation / Components / Registry / Features / Hierarchical MQTT"
Line 14: | Line 14: | ||
The following hierarchical topics with their respective payloads are implemented: | The following hierarchical topics with their respective payloads are implemented: | ||
− | * | + | *aas-registry/<reg-id>/shells/created |
− | * | + | *aas-registry/<reg-id>/shells/updated |
** Payload: New AAS-Descriptor | ** Payload: New AAS-Descriptor | ||
− | * | + | *aas-registry/<reg-id>/shells/removed |
** Payload: Old AAS-Descriptor | ** Payload: Old AAS-Descriptor | ||
− | * | + | *aas-registry/<reg-id>/submodels/added |
− | * | + | *aas-registry/<reg-id>/submodels/updated |
** Payload: New SM-Descriptor | ** Payload: New SM-Descriptor | ||
− | * | + | *aas-registry/<reg-id>/submodels/deleted |
** Payload: Old SM-Descriptor | ** Payload: Old SM-Descriptor | ||
− | * | + | *aas-registry/<reg-id>/shells/<encoded-aas-identifier>/submodels/added |
− | * | + | *aas-registry/<reg-id>/shells/<encoded-aas-identifier>/submodels/deleted |
** Payload: New SM-Descriptor | ** Payload: New SM-Descriptor | ||
Latest revision as of 11:39, 29 November 2022
Contents
Hierarchical MQTT Eventing
User Story & Use Case
As AAS Components user
I want hierarchical MQTT topics in the AAS Registry Component
so that I can subscribe precisely to the topics of interest without having to filter on client side
MQTT supports hierarchical topics with wildcard subscription support.
For example, if the topics a/b/x and a/b/y exist, subscribing to a/b/+ subscribes to all events broadcasted on both topics.
Feature Overview
The following hierarchical topics with their respective payloads are implemented:
- aas-registry/<reg-id>/shells/created
- aas-registry/<reg-id>/shells/updated
- Payload: New AAS-Descriptor
- aas-registry/<reg-id>/shells/removed
- Payload: Old AAS-Descriptor
- aas-registry/<reg-id>/submodels/added
- aas-registry/<reg-id>/submodels/updated
- Payload: New SM-Descriptor
- aas-registry/<reg-id>/submodels/deleted
- Payload: Old SM-Descriptor
- aas-registry/<reg-id>/shells/<encoded-aas-identifier>/submodels/added
- aas-registry/<reg-id>/shells/<encoded-aas-identifier>/submodels/deleted
- Payload: New SM-Descriptor
- /aas-registry/<reg-id>/shells/<encoded-aas-identifier>/submodels/deleted
- Payload: Old SM-Descriptor
For AAS-Identifier encoding, Base64URL encoding and URL encoding are available.
Feature Configuration
The feature can be configured in the registry.properties file by setting registry.events = MQTTV2 for Base64URL encoding or registry.events = MQTTV2_SIMPLE_ENCODING for URL encoding. Additionally, the Registry id needs to be configured via registry.id = <repo-id>.
An example configuration for this feature could be:
registry.events = MQTTV2 registry.id = product-aas-registry
The MQTT broker connectivity is configured via mqtt.properties