Overview

Topic Table

This table provides every namespace topic and a description of its purpose.

Relative Absolute Path Description
$aws / $aws / MQTT Broker root path.
version# 1 / $aws / version# / The major version of the cloud postprocessing that will operate on the data.
buoy_id 1 / $aws / version# / buoy_id / The buoy identifier. Used to uniquely identify a client node in the MQTT ecosystem
data / $aws / version# / buoy_id / data / Designated for subscription and publishing of client node data.
error / $aws / version# / buoy_id / error / Designated for publishing of error messages from client nodes.
config / $aws / version# / buoy_id / config / The configuration namespace path. Used for topic organisation only.
sensor / $aws / version# / buoy_id / config / sensor / Designated for subscription and publishing of sensor specific configuration options.
global / $aws / version# / buoy_id / config / global / Designated for subscription and publishing of global client node properties and configuration options.

NOTE: Access to this topic should be restricted to admin privileges only.

1 All italicized text denote topic strings that are dynamic in nature (i.e. it’s value will change depending on the particular client node it is referencing).

Topic Subscription and Publishing Tables

In this section, two tables are provided for further clarity regarding MQTT subscriptions and publishing to the broker namespace for the different project components.

Subscription

Client Node Subscription Topic Purpose
Buoy $aws / version# / buoy_id / config / sensor / Sensor specific configuration options.
Buoy $aws / version# / buoy_id / config / global / Global client node configuration and properties.
Dashboard $aws / version# / buoy_id / data / Collection of published sensor data.
Dashboard $aws / version# / buoy_id / error / Collection of published client node errors.

Publishing

Client Node Publishing Topic Purpose
Buoy $aws / version# / buoy_id / data / sensor / Destination of raw collected client node sensor data.
Buoy $aws / version# / buoy_id / error / Logging of client node errors.
Dashboard $aws / version# / buoy_id / config / global / Remote setting of global configuration options.
Dashboard $aws / version# / buoy_id / config / sensor / Remote setting of sensor specific configuration options.
Dashboard $aws / version# / buoy_id / error / Remote detection and correction of client node errors.