An estimated position is published by MeshGateway devices each time the position tracked gets updated. Different topic structure, but same payload as 'br/{organizationUuid}/{buildingUuid}/{floorUuid}/positionEstimate/{assetUuid}'.
identifies Organization subject
identifies Site subject within Organization
identifies MeshGateway Device reporting the PositionEstimate
identifies Asset tracked
Accepts the following message:
Estimated position information
{
"siteUuid": "C34B94C1-5F25-444F-A859-31DF5F0D58DD",
"deviceUuid": "899FAA2D-A562-45A1-A503-9ECB7348DCD9",
"estimatorUuid": "C0B18E90-538D-448A-A6C5-BB4F386DD580",
"roomUuid": "AC86DB20-F467-11EB-85B4-0800200C9A66",
"zoneUuid": "C682C5C0-F467-11EB-85B4-0800200C9A66",
"state": "TRACKED",
"motionState": "NON_MOVING",
"x": 0.9200375,
"y": 0.37057054,
"z": 0.875,
"accuracy": 16.11752,
"measurementTimeSec": 1598881492
}
An estimated position is published by MeshGateway devices each time the position tracked gets updated. Different topic structure, but same payload as 'br/{organizationUuid}/{buildingUuid}/{floorUuid}/positionEstimate/{assetUuid}'.
identifies Organization subject
identifies Building subject within Organization
identifies Floor subject within Organization
identifies Asset tracked
Accepts the following message:
Estimated position information
{
"siteUuid": "C34B94C1-5F25-444F-A859-31DF5F0D58DD",
"deviceUuid": "899FAA2D-A562-45A1-A503-9ECB7348DCD9",
"estimatorUuid": "C0B18E90-538D-448A-A6C5-BB4F386DD580",
"roomUuid": "AC86DB20-F467-11EB-85B4-0800200C9A66",
"zoneUuid": "C682C5C0-F467-11EB-85B4-0800200C9A66",
"state": "TRACKED",
"motionState": "NON_MOVING",
"x": 0.9200375,
"y": 0.37057054,
"z": 0.875,
"accuracy": 16.11752,
"measurementTimeSec": 1598881492
}
The state of the asset tracking system will be published, whenever it was changed by the MeshGateway which is responsible for tracking assets in the specified site. Currently, the state can only be ENABLED or DISABLED.
identifies Organization subject
identifies Site subject within Organization
identifies MeshGateway Device reporting the PositionEstimate
Accepts the following message:
Current state of the asset tracking system
{
"siteUuid": "string",
"estimatorUuid": "string",
"enabled": true
}
Message published by MeshGateway devices when the entered or left state of a tracked Asset changes with respect to a Geofence defined. Different topic structure, but same payload as 'br/{organizationUuid}/{buildingUuid}/{floorUuid}/geofenceEvent/{assetUuid}/{geofenceUuid}'.
identifies Organization subject
identifies Site subject within Organization
identifies MeshGateway Device reporting the GeofenceEvent
identifies Asset tracked
identifies the Geofence subject
Accepts the following message:
Geofence tracking message
{
"deviceUuid": "899FAA2D-A562-45A1-A503-9ECB7348DCD9",
"state": "LEFT",
"assetUuids": [
"4EE972CE-592E-400D-81F6-431C8D554743",
"9130962B-4CA4-4DB8-BA56-778C3C4E2163"
],
"assetCount": 2,
"timestamp": 1598881494053
}
Message published by MeshGateway devices when the entered or left state of a tracked Asset changes with respect to a Geofence defined. Different topic structure, but same payload as 'rltn-iot/{organizationUuid}/{siteUuid}/{estimatorUuid}/indoor/{assetUuid}/{geofenceUuid}/geofenceEvent'
identifies Organization subject
identifies Building subject within Organization
identifies Floor subject within Organization
identifies Asset tracked
identifies the Geofence subject
Accepts the following message:
Geofence tracking message
{
"deviceUuid": "899FAA2D-A562-45A1-A503-9ECB7348DCD9",
"state": "LEFT",
"assetUuids": [
"4EE972CE-592E-400D-81F6-431C8D554743",
"9130962B-4CA4-4DB8-BA56-778C3C4E2163"
],
"assetCount": 2,
"timestamp": 1598881494053
}
A message published by the BlueRange gateway, as soon as a beacon report was received from a mesh node. Beacon scanning and reporting is disabled by default and must be enabled and configured in the BlueRange admin portal.
identifies Organization subject
identifies Site subject within Organization
identifies the mesh node that reported the scanned beacon
identifies the scanned beacon by its BLE address. Note, that the colons in the BLE address are omitted in the MQTT topic, i.e. 001122334455 is used instead of 00:11:22:33:44:55
Accepts the following message:
Beacon report message
{
"meshNodeUuid": "2863BE88-1B1B-484C-972D-907861B945BD",
"meshNodeBleAddress": "EF:38:17:A4:AF:AD",
"beaconBleAddress": "C1:1B:27:33:8E:C4",
"scanTimeSec": 1653659891,
"reportTimeSec": 1653659891,
"rssi": -58
}
A message published by the BlueRange gateway that contains a (gzip compressed) batch of beacon reports intended to reduce the MQTT traffic. In order to receive messages, the feature "beacon scanning and reporting" must be enabled on the gateway policy with MQTT Message Batching enabled.
identifies Organization subject
identifies Site subject within Organization
Accepts the following message:
Beacon report batch message
{
"beaconReports": "H4sIAAAAAAAAAMWPuwrCMABF/yVzA4lp0+RueTSjizqJg7YBC7aVRifpv5tJEBHchLvdc4azf5AhpvN66uLu3ncEJCjOeKM1VaIRtHTGUbsSjKoyOK2ME95LUrwse4mm6+aYUnZdBWvBNIwGa8DqDJ7isZ3GNywENALew9RwHFJnLLXHcdsPcRNbAi4rJVilVFmQOV6n+fZ5yXyl1BNQKZfiLxkSmsHkWfAA575miF8yuFoOTy0N752PAQAA"
}
Client applications may publish setpoint values for actioning an actuator. Live feedback of sensor data needs to be processed to find out whether actioning succeeded.
identifies Organization operated in
network the controlled device belongs to and where the environment profile data is read from
controlled device the actuator is attached to
type of actuator, such as driveUp
index of the actuator to control such as lamp head #0, #1, etc.
Accepts the following message:
controls an actuator supplying a setpoint value
{
"value": {},
"timestamp": 0
}
The MeshGateway publishes an IndicatorData message whenever a connected device reports a matching state indication.
identifies Organization subject
identifies Site subject within Organization
identifies mesh node reporting the IndicatorData
type of indicator, such as MOTOR_FAILURE
identifies the concrete indicator, such as a motor 1..4
Accepts the following message:
Indicator notification
{
"deviceUuid": "325512C9-9861-499E-B3E5-F00D80135B56",
"deviceId": "BXYDK",
"siteUuid": "C34B94C1-5F25-444F-A859-31DF5F0D58DD",
"module": "knx",
"type": "MOTOR_FAILURE",
"index": 0,
"timestamp": 1622445275686
}
The MeshGateway publishes a SensorData message whenever the measurement value of a sensor connected to some Beacon changes. Different topic structure, but same payload as 'br/{organizationUuid}/{buildingUuid}/{floorUuid}/{roomUuid}/sensorData/{sensorType}'
identifies Organization subject
identifies Site subject within Organization
identifies mesh node Device reporting the SensorData
type of sensor, such as presence
identifies the concrete sensor, such as a lamp head index 1..4
Accepts the following message:
Sensor raw value change notification
{
"deviceUuid": "325512C9-9861-499E-B3E5-F00D80135B56",
"deviceId": "BXYDK",
"siteUuid": "C34B94C1-5F25-444F-A859-31DF5F0D58DD",
"module": "vs",
"type": "MOTION",
"index": 0,
"value": 1,
"timestamp": 1598882203013
}
The MeshGateway publishes a SensorData message whenever the measurement value of a sensor connected to some Beacon changes. Different topic structure, but same payload as 'rltn-iot/{organizationUuid}/{siteUuid}/{beaconUuid}/sensor/{sensorType}/{sensorIndex}/sensorData'
identifies Organization subject
identifies Building subject within Organization
identifies Floor subject within Organization
identifies Room subject within Organization
type of sensor, such as presence
Accepts the following message:
Sensor raw value change notification
{
"deviceUuid": "325512C9-9861-499E-B3E5-F00D80135B56",
"deviceId": "BXYDK",
"siteUuid": "C34B94C1-5F25-444F-A859-31DF5F0D58DD",
"module": "vs",
"type": "MOTION",
"index": 0,
"value": 1,
"timestamp": 1598882203013
}
BlueRange does not use persistent retained messages. Therefore newly connecting clients do not receive up to date sensor measurements automatically. In order to support real-time clients displaying the current values, such a client may explicitly request a MeshGateway to publish the last known recent measurement values. Different topic structure, but same payload as 'br/{organizationUuid}/{buildingUuid}/{floorUuid}//sensorRequest'
identifies Organization subject
identifies Site subject within Organization
adresses a particular MeshGateway device of the Site
Accepts the following message:
request current SensorData measurements
{
"clientId": "string",
"timestamp": 0
}
BlueRange does not use persistent retained messages. Therefore newly connecting clients do not receive up to date sensor measurements automatically. In order to support real-time clients displaying the current values, such a client may explicitly request a MeshGateway to publish the last known recent measurement values. Different topic structure, but same payload as 'rltn-iot/{organizationUuid}/{siteUuid}/{deviceUuid}/sensor///sensorRequest'
identifies Organization subject
identifies Building subject within Organization
identifies Floor subject within Organization
Accepts the following message:
request current SensorData measurements
{
"clientId": "string",
"timestamp": 0
}
Requests a target device to physically flash or blink so that one can identify the thing.
identifies Organization subject
network that is to locate the target device
gateway to communicate with device. This parameter is optional and can be replaced with '//'
device that is to identify itself to the human user
Accepts the following message:
request device identification
{
"onOff": true,
"timestamp": 0
}
Published by clients implementing the environment profiles. E.g. TouchForLight and BlueForLight.
identifies Organization subject
identifies Site subject within Organization
identifies Device subject within the site. This parameter is optional and can be replaced with '//'
type of the environment profile
identifies the profile id and the button id separated by '-'
Accepts the following message:
Perform actions based on environment profile
{
"profileType": "string",
"profileId": 0,
"buttonId": 0,
"values": [
{}
]
}
identifies Organization subject
identifies Site subject within Organization
identifies Beacon Device requested to act on sensors
unique string addressing a Beacon module
identifies the component (vendor-specific such as a lamp head) and register (vendor-specific such as hardware address) in the form of decimal numbers separated by '-', e.g. 32-4
either 'read', 'write' or 'writeAck'
Accepts the following message:
instructs device to read data from and/or write data into a register address
{
"module": "clc",
"component": 1,
"register": 10,
"length": 4,
"requestHandle": 123,
"timestamp": 1599121317020
}
identifies Organization subject
identifies Site subject within Organization
identifies Beacon Device requested to sense on sensors
unique string addressing a Beacon module
identifies the component (vendor-specific such as a lamp head) and register (vendor-specific such as hardware address) in the form of decimal numbers separated by '-', e.g. 32-4
either 'unspecified', 'errorRsp', 'readRsp', 'writeRsp'
Accepts the following message:
device reporting data of a register address in response to a ComponentActRequest
{
"module": "clc",
"component": 23,
"register": 4874,
"length": 2,
"data": "AAA=",
"requestHandle": 129,
"timestamp": 1598882277329
}
Any mesh node properly configured may pick up a button being pressed, resulting in this message being published. Notice, the system collapses button presses picked up by multiple mesh nodes for a short amount of time. Also be aware that button presses may be lost in cases where the mesh fails picking up the advertisement message, transmission gets lost over the air or due to messaging overloads. Such failures are expected to be rare but do exist. Since delivery can not be guaranteed this mechanism is unsuited for emergency or panic buttons.
identifies Organization subject
identifies Site subject within Organization
identifies Beacon Device picking up the button press
physical BLE address of button pressed, 6-bytes coded as all lower-case hex digits
of hardware button segment allowing differentiating the segment pressed in case the button device has got multiple keys
Accepts the following message:
device reporting the pickup of a button press
{
"module": "string",
"address": "string",
"index": "string",
"timestamp": 0
}
During indoor position estimation calibration the MeshGateway device reports raw measurement data to the BlueRange server. This message is internal and subject to change without notice. It is not meant to be used by 3rd party software acting as a middleware!
identifies Organization subject
identifies Site subject within Organization
identifies MeshGateway Device reporting the CalibrationMeasurement
identifies CalibrationRun executing
Accepts the following message:
Calibration measurement information
{
"runUuid": "string",
"measuringDeviceUuid": "string",
"measuredDeviceUuid": "string",
"timestamp": 0,
"rssi": 0.1
}
During indoor position estimation calibration the MeshGateway device reports raw measurement data to the BlueRange server. This message is internal and subject to change without notice. It is not meant to be used by 3rd party software acting as a middleware!
identifies Organization subject
identifies Site subject within Organization
identifies MeshGateway Device reporting the CalibrationReference
identifies CalibrationRun executing
Accepts the following message:
Calibration measurement information
{
"runUuid": "string",
"calibrationDeviceUuid": "string",
"timestamp": 0,
"x": 0.1,
"y": 0.1
}
During indoor position tracking the MeshGateway reports device estimations. This message is internal and subject to change without notice. It is not meant to be used by 3rd party software acting as a middleware!
identifies Organization subject
identifies Site subject within Organization
identifies MeshGateway Device reporting the DeviceEstimate
identifies Asset tracked
Accepts the following message:
Device estimation information
{
"deviceUuid": "BBFG6",
"estimatorUuid": "C0B18E90-538D-448A-A6C5-BB4F386DD580",
"estimationTimeInMs": 1598881598084,
"x": 2003750852598.6536,
"y": 2003750851736.9265,
"z": 24000,
"standardDeviationX": 250.8349041318405,
"standardDeviationY": 156.987559031807,
"standardDeviationZ": 0,
"state": "KNOWN",
"publicationAllowed": true
}
This message is published by the BlueRange server to inform MeshGateway devices about outstanding MDM actions targetting devices of the mesh network. The body payload contains a total number of outstanding actions only. Upon reception the MeshGateway reads and processes the actual actions by contacting the BlueRange server it is enrolled at using the REST interface.
identifies Organization of the MeshGateway
identifies MeshGateway Device subject within Organization
Accepts the following message:
Pending actions notification message
{
"total": 0
}
This message is published by the BlueRange server to inform MeshGateway devices about outstanding MDM actions targetting asset devices in range. The body payload contains a list of assets having outstanding actions. Upon reception the MeshGateway reads and processes the actual actions by contacting the BlueRange server it is enrolled at using the REST interface.
identifies Organization of the MeshGateway
identifies MeshGateway Device subject within Organization
Accepts the following message:
Asset actions notification message
{
"results": [
"string"
]
}
This message may be published by any participant to informat about an error condition.
identifies Organization of the Device
identifies Device subject within Organization, empty string for addressing the BlueRange server(s)
allows filtering by clientId, empty string matches all parties
an unspecified type discriminator allowing subscription for some particular kind of error
Accepts the following message:
Diagnostic error message
{
"timestamp": 0,
"exception": {}
}
Requests a diagnostic pong reply. The message payload may be an arbitrary JSON object. Upon reception of matching topic variable(s), the incoming message payload is replayed using the pong topic. This internal message is subject of change without notice.
identifies Organization of the Device
identifies Device subject within Organization, empty string for addressing the BlueRange server(s)
allows filtering by clientId, empty string matches all parties
Accepts the following message:
{}
Responds a diagnostic ping request by replaying the message payload received. This internal message is subject of change without notice.
identifies Organization of the Device
identifies Device subject within Organization, the BlueRange server(s) use empty string value here
clientId of the responding party
Accepts the following message:
{}
Requests a mesh node to transmit what assets were detected nearby recently in the form of an infoResponse
identifies Organization subject
identifies Site subject within Organization
adresses a particular mesh node to report detected assets of
Accepts the following message:
request current assets on mesh node
{}
Sent by a mesh node to report assets detected nearby in response to an infoRequest
identifies Organization subject
identifies Site subject within Organization
identifies the mesh node reporting the assets detected nearby
Accepts the following message:
response current assets from mesh node
{
"deviceUuid": "string",
"detectedAssets": [
{
"assetDeviceUuid": "string",
"assetDeviceId": "string",
"rssi": 0,
"timestamp": 0
}
]
}
Fired by the MDM when the status of a device changes.
identifies Organization subject
identifies Device subject
Accepts the following message:
event informing about changes in the status of a device.
{
"organizationUuid": "58E5D1D0-3642-11EB-9ABB-0800200C9A66",
"deviceUuid": "899FAA2D-A562-45A1-A503-9ECB7348DCD9",
"deviceStatusNew": "INACTIVE",
"deviceStatusOld": "COMPLIANT"
}
Send network statistics collected on a device
identifies Organization subject
identifies Device subject
identifies MetricType subject
Accepts the following message:
Metric about the network activity to build up statistics
{
"in": 0,
"out": 0,
"timestamp": 0
}
Request health data for all matching devices and health components. Empty string matches all.
identifies Organization subject
optionally identifies a single Device
optionally identifies a single HealthData by its component name
Accepts the following message:
Request the health status of a device
{
"clientId": "string",
"timestamp": 0
}
Send a health component of a device
identifies Organization subject
identifies Device subject
identifies the HealthData by its component name
Accepts the following message:
The health status of a health component
{
"healthComponent": "string",
"health": {},
"timestamp": 0
}
Estimated position information
Current state of the asset tracking system
Geofence tracking message
Geofence tracking message
Beacon report message
Beacon report batch message
controls an actuator supplying a setpoint value
Indicator notification
Sensor raw value change notification
request current SensorData measurements
request device identification
Perform actions based on environment profile
instructs device to read data from and/or write data into a register address
device reporting data of a register address in response to a ComponentActRequest
device reporting the pickup of a button press
Calibration measurement information
Calibration measurement information
Device estimation information
Pending actions notification message
Asset actions notification message
Diagnostic error message
response current assets from mesh node
request current assets on mesh node
event informing about changes in the status of a device.
Metric about the network activity to build up statistics
Request the health status of a device
The health status of a health component