IoT Core Datenmodell
Das IoT Core Datenmodell ist in unterschiedliche Bereiche unterteilt.
Der Simple IoT Core beschreibt ein Datenmodell zur Übertragung von Geräte- und Statusinformationen.
Im Logic Core werden Datatransferobjects (DTOs) mit Bezug auf Regeln, Szenen, Verknüpfungen und Timer beschrieben.
Der Command Core beinhaltet alle Kommando DTOs für die Interaktion mit dem Gateway.
Diese unterteilen sich in:
Im Template Core werden relevante DTOs zur teilautomatisierten Verwaltung per Vorlage beschrieben.
Alle Objekte werden in einen Container verpackt und übertragen. Der Container enthält grundlegende Transportinformationen wie den Absender (nodeId) und die Zeit (timestamp).
Der Objekttyp des DTO wird im Feld "type" übertragen.
Feld | Datentype | Beschreibung |
nodeId | String | Eine eindeutige ID, welche das Gateway identifiziert. |
timestamp | Number | Zeitstempel der Nachricht. Unterschied, gemessen in Millisekunden, zwischen der aktuellen Zeit und dem 01.01.1970 00:00 Uhr basierend auf der UTC Zeitzone. |
type | String | Typ Information des dto Objektes. |
dto | Object | Das eigentliche Datenobjekt. |
Für das im DTO Container vorhandene Feld "type" sind die folgenden Typen möglich.
Type | Resource Path | DTO |
NODE_STATUS | node/status | |
NODE_TEMPLATE_RESULT | node/template/result | |
NODE_ENOCEAN_GATEWAY | node/enocean/gateway | |
DESCRIPTION_THING | description/thing | |
THING | thing | |
THING_DELETED | thing/deleted | |
DESCRIPTION_VALUE | description/value | |
LOGIC_RULE | logic/rule | |
LOGIC_RULE_DELETED | logic/rule/deleted | |
LOGIC_SCENE | logic/scene | |
LOGIC_SCENE_DELETED | logic/scene/deleted | |
LOGIC_CONNECTION | logic/connection | |
LOGIC_CONNECTION_DELETED | logic/connection/deleted | |
LOGIC_SCENE_RUNNING | logic/scene/running | |
COMMAND_RESULT | command/result |
Type | Resource Path | DTO |
NODE_UPDATE | node/update | |
NODE_RESTART | node/restart | |
NODE_TEMPLATE_IMPORT | node/template/import | |
NODE_STATUS_INTERVAL | node/status/interval | |
NODE_PAIRING | node/pairing | |
DESCRIPTION_THING_REFRESH | description/thing/refresh | |
NODE_ENOCEAN_GATEWAY_REFRESH | node/enocean/gateway/refresh | |
NODE_ENOCEAN_GATEWAY_ACTIVE | node/enocean/gateway/active | |
THING_CREATE | thing/create | |
THING_DELETE | thing/delete | |
THING_REFRESH | thing/refresh | |
THING_RENAME | thing/rename | |
THING_CHANNEL_SET | thing/channel/set | |
THING_PARAMETER_SET | thing/parameter/set | |
THING_ENOCEAN_EURID_ASSIGN | thing/enocean/eurid/assign | |
THING_ENOCEAN_PAIRING_SEND | thing/enocean/pairing/send | |
DESCRIPTION_VALUE_REFRESH | description/value/refresh | |
TIMER_CREATE | timer/create | |
TIMER_UPDATE | timer/update | |
TIMER_ENABLE | timer/enable | |
LOGIC_RULE_ADD | logic/rule/add | |
LOGIC_RULE_UPDATE | logic/rule/update | |
LOGIC_RULE_DELETE | logic/rule/delete | |
LOGIC_RULE_REFRESH | logic/rule/refresh | |
LOGIC_SCENE_ADD | logic/scene/add | |
LOGIC_SCENE_UPDATE | logic/scene/update | |
LOGIC_SCENE_DELETE | logic/scene/delete | |
LOGIC_SCENE_REFRESH | logic/scene/refresh | |
LOGIC_SCENE_EXECUTE | logic/scene/execute | |
LOGIC_SCENE_EXECUTE_OBJECT | logic/scene/execute/object | |
LOGIC_SCENE_RUNNING_GET | logic/scene/running/get | |
LOGIC_SCENE_STOP | logic/scene/stop | |
LOGIC_SCENE_THING_CREATE | logic/scene/thing/create | |
LOGIC_CONNECTION_ADD | logic/connection/add | |
LOGIC_CONNECTION_UPDATE | logic/connection/update | |
LOGIC_CONNECTION_DELETE | logic/connection/delete | |
LOGIC_CONNECTION_REFRESH | logic/connection/refresh | |
LOGIC_CONNECTION_ENABLE | logic/connection/enable |