Version | Änderung | Wer | Wann |
---|---|---|---|
0.1 | Erstellung | SIC! Software GmbH | 23.11.2020 |
Alle Daten liegen im JSON-Format vor. Ausgenommen davon sind Löschungen mit einer leeren Payload.
Reine Messdaten von Datenhaltern und Sensoren. Enthält den Topic-Baum unterhalb von ts/#
.
Topic: ts/tools/:mac_address
Payload:
u
(number): Batterie-Spannung [V]rssi
(number): SignalstärkeBeispiel:
# Topic: ts/tools/00:00:00:38:01:2D
{
"u": 3.051974,
"rssi": -59
}
Topic: ts/tools/:tool_mac_address/sensors/:sensor_mac_address
Sensoren ohne Datenhalter erscheinen unter ts/tools/00:00:00:00:00:00/#
Payload:
t
(number): Temperatur [°C]p
(number): Druck [bar]u
(number): Batterie-Spannung [V]rssi
(number): SignalstärkeBeispiel:
# Topic: ts/tools/00:00:00:38:01:2D/sensors/00:00:00:38:01:0B
{
"t": 18.957628,
"p": 35.245373,
"u": 3.1462061,
"rssi": -68
}
Topic-Baum unterhalb von evt/#
.
Topic-Baum unterhalb von evt/tools/#
Regelmäßig von den Datenhaltern publizierte Informationen.
Topic: evt/tools/:mac_address
Payload:
ts
(string): Zeitstempel (ISO 8601)batt
(number): Batterie-Spannung [V]rssi
(number): SignalstärkeSCnt
(number): Anzahl zugewiesener SensorenSNr
(number): Seriennummername
(string): AnzeigenameLOCK
(boolean): Konfiguration gesperrtACTIVE
(boolean): Datenhalter ist aktiviert (schnelles Advertising)WrnU
(boolean): Datenhalter hat Batterie-Warnung, Grenzwert fest in Firmenware hinterlegt und nicht änderbarMEASURE
(boolean): RESERVEDaction
(string): Aktuelle Aktion. Mögliche Werte: [“none”, “LogInActive”, “CheckActive”, “CheckOk”, “CheckWarn”, “CheckAlarm”, “CheckMissing”, “LogInOk”]Beispiel:
# Topic: evt/tools/00:00:00:38:00:02
{
"ts": "2020-11-06T15:02:01.901Z",
"batt": 3.3035872,
"rssi": -46,
"SCnt": 1,
"SNr": 1002,
"name": "Anzeigename",
"LOCK": false,
"ACTIVE": false,
"WrnU": false,
"MEASURE": false,
"action" : "none"
}
Bei der Änderung von Datenhalter-Konfigurationen publizierte Einstellungen.
Topic: evt/tools/:mac_adresse/config
Payload:
ts
(string): Zeitstempel (ISO 8601)id
(string): MAC-Adresse des DatenhaltersserialNumber
(number): SeriennummerdeviceName
(string): Gerätename, wird derzeit nicht verwendet.toolID
(number): Fester Wert, immer -1name
(number): Teilename (Anzeigename) des DatenhaltersxPos
(number): Horizontale Position auf dem Werkzeugbild [%]yPos
(number): Vertikale Position auf dem Werkzeugbild [%]measurementInterval
(number): Messintervall im aktivierten Modus [s] (Schlafmodus fest 120s)transmissionInterval
(number): Datenübertragungsintervall im aktivierten Modus [s] (Schlafmodus fest 2s)transmitStay
(number): Deaktivierungsintervall bis Datenhalter nach Aktivierung in den Schlafmodus wechseltadvertisementChannel37
(boolean): Nutze Bluetooth LE Advertising Kanal 37advertisementChannel38
(boolean): Nutze Bluetooth LE Advertising Kanal 38advertisementChannel39
(boolean): Nutze Bluetooth LE Advertising Kanal 39operatingHours
(number): Aktuelle Betriebsstunden (read-only)sensorCount
(number): Anzahl zugewiesener Sensoren (read-only)locked
(boolean): Konfiguration gesperrtmeasuring
(boolean): RESERVEDupdatedAt
(string): Datum der letzten Änderung (YYYY-MM-DD oder “0000-00-00”)updatedBy
(string): Urheber der letzten Änderung (Benutzerkennung)Beispiel:
# Topic: evt/tools/00:00:00:38:00:01/config
{
"ts": "2020-11-05T14:25:23.731Z",
"id": "00:00:00:38:01:2C",
"serialNumber": 1300,
"name": "Anzeigename",
"toolID": -1,
"deviceName": "",
"xPos": 0,
"yPos": 0,
"measurementInterval": 5,
"transmissionInterval": 1,
"transmitStay": 2,
"advertisementChannel37": true,
"advertisementChannel38": true,
"advertisementChannel39": true,
"operatingHours": 0,
"sensorCount": 0,
"locked": false,
"measuring": false,
"updatedAt": "2020-10-10",
"updatedBy": "1#user1@example"
}
In der Datenhalter-Konfiguration hinterlegte Liste von zugewiesenen Sensoren mit Ihren jeweiligen Konfigurationen. Wird publiziert beim Zuweisen oder Zurücksetzen von Sensoren.
Topic: evt/tools/:mac_address/configured_sensors
Payload:
serialNumber
(number): SeriennummersensorID
(number): Vom Datenhalter vergebene Sensor-IDname
(string): (Anzeige-) Name des SensorsxPos
(number): Horizontale Position auf dem Werkzeugbild [%]yPos
(number): Vertikale Position auf dem Werkzeugbild [%]pressureWarning
(number): Obergrenze für Druck-Warnung [bar]pressureAlert
(number): Obergrenze für Druck-Alarm [bar]temperatureWarning
(number): Obergrenze für Temperatur-Warnung [°C]updatedAt
(string): Datum der letzten Änderung (YYYY-MM-DD oder “0000-00-00”)updatedBy
(string): Urheber der letzten Änderung (Benutzerkennung)Beispiel:
# Topic: evt/tools/00:00:00:38:00:01/configured_sensors
[
{
"serialNumber": 1005,
"sensorID": 1,
"name" : "Anzeigename",
"xPos": 0,
"yPos": 0,
"pressureWarning": 150,
"pressureAlert": 25,
"temperatureWarning": 50
"updatedAt": "2020-10-10",
"updatedBy": "1#user@example",
}
]
Pro Datenhalter kann jeweils ein Werkzeugbild für die Ober- und Unterseite hochgeladen werden.
Topic: evt/tools/:mac_address/images/:position
(Positionen: [top
, bottom
])
Payload:
image
(string): Bilddaten in Base64 kodiertBeispiel:
# Topic: evt/tools/00:00:00:38:00:01/images/top
{
"image" : "base64"
}
Enthält die pro Gerät konfigurierten Koordinaten auf den Werkzeugbildern.
Topic: evt/tools/:mac_address/coordinates
Payload:
[:sensor_mac_address]
(object): MAC-Adresse eines Sensors auf dem Werkzeugbild
x
(number): Horizontale Position auf dem Werkzeugbild [%]y
(number): Vertikale Position auf dem Werkzeugbild [%]position
(string): Ober-/Unterseite [“top”, “bottom”]Beispiel:
# Topic: evt/tools/00:00:00:38:00:02/coordinates
{
"00:00:00:38:00:03": {
"x": 57.90355,
"y": 49.12954,
"position": "top"
},
"00:00:00:38:00:04": {
"x": 27.12345,
"y": 33.12924,
"position": "bottom"
}
}
Topic-Baum unterhalb von evt/sensors/#
Regemäßig von Sensoren publizierte Informationen, inkl. aktueller Messdaten.
Topic (Freie Sensoren): evt/sensors/:mac_address
Topic (Zugewiesene Sensoren): evt/tools/:tool_mac_address/sensors/:sensor_mac_address
Payload:
ts
(string): Zeitstempel (ISO 8601)temp
(number): Temperatur [°C]press
(number): Druck [bar]batt
(number): Batterie-Spannung [V]rssi
(number: SignalstärkeSNr
(number): SeriennummerSId
(number): Vom Datenhalter zugewiesene Sensor-IDts_rtc
(string): Echtzeit-Zeitstempel (YY-MM-DD_hh:mm:ss)LOCK
(boolean): Konfiguration gesperrtACTIVE
(boolean): Sensor ist aktiviert (schnelles Advertising)MEASURE
(boolean): RESERVEDAlmT
(boolean): Sensor hat Temperatur-AlarmAlmP
(boolean): Sensor hat Druck-AlarmWrnU
(boolean): Sensor hat Batterie-Warnung, Grenzwert fest in Firmenware hinterlegt und nicht änderbarWrnT
(boolean): Sensor hat Temperatur-WarnungWrnP
(boolean): Sensor hat Druck-WarnungBeispiel:
# Topic: evt/tools/00:00:00:38:00:9E/sensors/00:00:00:38:01:10
{
"ts": "2020-11-06T15:02:01.936Z",
"temp": 18.941765,
"press": 39.868786,
"batt": 2.9628665,
"rssi": -92,
"SNr": 1272,
"SId": 114,
"ts_rtc": "20-11-06_15:01:31",
"LOCK": false,
"ACTIVE": false,
"MEASURE": false,
"AlmT": false,
"AlmP": false,
"WrnU": true,
"WrnT": false,
"WrnP": true
}
Bei der Änderung von Sensor-Konfigurationen publizierte Einstellungen.
Topic (Freie Sensoren): evt/sensors/:mac_address/config
Topic (Zugewiesene Sensoren): evt/tools/:tool_mac_address/sensors/:sensor_mac_address/config
Payload:
ts
(string): Zeitstempel (ISO 8601)toolID
(string): Datenhalter-MAC-Adresse (für freie Sensoren: “00:00:00:00:00:00”)serialNumber
(number): SeriennummersensorID
(number): Vom Datenhalter zugewiesene Sensor-IDname
(string): (Anzeige-) Name des SensorsxPos
(number): Horizontale Position auf dem Werkzeugbild [%]yPos
(number): Vertikale Position auf dem Werkzeugbild [%]pressureWarning
(number): Obergrenze für Druck-Warnung [bar]pressureAlert
(number): Obergrenze für Druck-Alarm [bar]temperatureWarning
(number): Obergrenze für Temperatur-Warnung [°C]temperatureAlert
(number): Obergrenze für Temperatur-Alarm (read-only) [°C]measurementInterval
(number): Messintervall im aktivierten Modus [s] (Schlafmodus fest 120s)transmissionInterval
(number): Datenübertragungsintervall im aktivierten Modus [s] (Schlafmodus fest 10s)transmitStay
(number): Deaktivierungsintervall bis Sensor nach Aktivierung in den Schlafmodus wechseltadvertisementChannel37
(boolean): Nutze Bluetooth LE Advertising Kanal 37advertisementChannel38
(boolean): Nutze Bluetooth LE Advertising Kanal 38advertisementChannel39
(boolean): Nutze Bluetooth LE Advertising Kanal 39operatingHours
(number): Aktuelle Betriebsstunden (read-only)operatingHoursOnline
(number): Aktuelle Betriebsstunden im aktivierten Modus(read-only)locked
(boolean): Konfiguration gesperrtmeasuring
(boolean): RESERVEDupdatedAt
(string): Datum der letzten Änderung (YYYY-MM-DD oder “0000-00-00”)updatedBy
(string): Urheber der letzten Änderung (Benutzerkennung)Beispiel:
# Topic: evt/tools/00:00:00:38:00:0B/sensors/00:00:00:38:00:18/config
{
"ts": "2020-11-05T16:25:44.097Z",
"toolID": "00:00:00:38:00:0B",
"serialNumber": 1024,
"sensorID": 13,
"name": "Anzeigename",
"xPos": 0,
"yPos": 0,
"pressureWarning": 150,
"pressureAlert": 25,
"temperatureWarning": 50,
"temperatureAlert": 80,
"measurementInterval": 10,
"transmissionInterval": 10,
"transmitStay": 0,
"advertisementChannel37": true,
"advertisementChannel38": true,
"advertisementChannel39": true,
"operatingHours": 0,
"operatingHoursOnline": 0,
"locked": false,
"measuring": false
"updatedAt": "2020-10-10",
"updatedBy": "1#user1@example"
}
Enthält Informationen zum aktuellen Pressen-Modus, sofern dieser aktiv ist.
Topic: evt/press_mode
Payload:
tool
(string): MAC-Adresse des Datenhalters im Pressen-ModusinitiatedVia
(string): Plattform, über die der Pressen-Modus gestartet wurde, falls bekanntinitiatedBy
(number): ID des auslösenden Benutzers; 0 = System (z.B. via Schlüsselschalter)Beispiel:
# Topic: evt/press_mode
{
"tool": "00:00:00:38:00:02",
"initiatedVia": "webui",
"initiatedBy": 1
}
Spiegelt die Eingänge (GPIO-Ports) des Gateways.
Topic: evt/gpio/in/:port
Ports:
0
: Schlüsselschalter des Gateways1
: Nicht benutzt2
: Nicht benutzt3
: Nicht benutzt4
: Error-Pin (Kurzschluss an I/O-Karte)Payload:
value
(boolean): Ob Spannung anliegtBeispiel:
# Topic: evt/gpio/in/0
{
"value": false
}
Enthält Informationen zur im Gateway hinterlegten Lizenz. Wird publiziert, wenn diese geändert wird.
Topic: evt/license
Payload:
currentLicense
(object): Informationen zur aktuell eingetragenen Lizenz, falls vorhanden
currentLicense
(string): Eingetragener LizenzschlüsselvalidFrom
(string): Startdatum des Gültigkeitszeitraums (ISO 8601), falls vorhandenvalidTo
(string): Enddatum des Gültigkeitszeitraums (ISO 8601), falls vorhandendeviceIdentifier
(string): Identifier des lizenzierten GatewaysdeviceIdentifier
(string): Identifier des Gateways selbstvalid
(boolean): Ob derzeit eine gültige Lizenz eingetragen istEine gültige Lizenz liegt vor, wenn ein gültig signierter Lizenzschlüssel eingetragen ist, dessen lizenzierter Gateway-Identifier mit dem internen Identifier des Gerätes übereinstimmt. Außerdem gilt eine Lizenz nur innerhalb des angegebenen Gültigkeitszeitraumes als valide.
Beispiel:
# Topic: evt/license
{
"currentLicense" : {
"key" : "Signierter Schlüssel",
"validFrom" : null,
"validTo" : "2022-07-02T00:00:00Z",
"deviceIdentifier" : "device-identifier"
},
"deviceIdentifier" : "device-identifier",
"valid" : true
}
Gibt an, ob derzeit ein Update der WPM-Software durchgeführt wird.
Topic: evt/gateway_update
Payload:
running
(boolean): Ob derzeit ein Update durchgeführt wirdBeispiel:
# Topic: evt/gateway_update
{
"running": true
}