Difference between revisions of "Mqtt"
From AMTech WikiDocs
Line 11: | Line 11: | ||
** Crud : <tenant>/observationresourcecrud/<thingType>/<thingId>/<crudOp> | ** Crud : <tenant>/observationresourcecrud/<thingType>/<thingId>/<crudOp> | ||
** Bridge crud: _bridge/<tenant>/observationresourcecrud/amtechM2mBridge/<bridgeId>/_all/<propId> | ** Bridge crud: _bridge/<tenant>/observationresourcecrud/amtechM2mBridge/<bridgeId>/_all/<propId> | ||
+ | |||
+ | |||
+ | ''' Client applications required config ''' | ||
+ | Client applications that want to send messages, and receive them all (including messages that were sent to topics when the client app was offline), must : | ||
+ | * Use the same client ID every time it reconnects, or use a MQTT client with the option automatic-reconnect set to true | ||
+ | * Connect with clean_session=False | ||
+ | * Subscribe to topics QoS>0 | ||
+ | * Publish messages with QoS>0 |
Revision as of 09:50, 13 October 2020
Topic Structure
- User-defined topics in the form of tenant/obsType/custom/topic/parts
- Tenant and observation type explicitly required in all topic
- Topics created as activityCreator are only for configuration purposes and are saved in DB
- They are used in reasoners configuration inside activity
- They do not include tenant in their name (creator topics in the form of /amtech/things/eventsources/<topic>/<levels>)
- Topics created as follower or as part of the execution of an activity are not persistd in DB. They are mqtt topics to hold observations
- System topics in the form of prefix/tenant (ex. topic for OTA, for new digital twin, etc.)
- Core topics
- Commands : _cmd/<tenant>/<thingtype>/<thingid>/<user-defined>/<path>
- Crud : <tenant>/observationresourcecrud/<thingType>/<thingId>/<crudOp>
- Bridge crud: _bridge/<tenant>/observationresourcecrud/amtechM2mBridge/<bridgeId>/_all/<propId>
Client applications required config
Client applications that want to send messages, and receive them all (including messages that were sent to topics when the client app was offline), must :
- Use the same client ID every time it reconnects, or use a MQTT client with the option automatic-reconnect set to true
- Connect with clean_session=False
- Subscribe to topics QoS>0
- Publish messages with QoS>0