SQL Datenbank

Allgemein

Die SQL Datenbank wird genutzt, um die Informationen aller, an das Gateway angeschlossenen, Komponenten zu erfassen. Es werden zwei Arten von Informationen vorgehalten:

  • Gerätebeschreibung
  • Prozessdaten der vorhandenen Geräte

Gerätebeschreibung

deviceIdfriendlyIddeviceTypedeviceLocationmanufactor
050B5032Socket1SocketD21 02.03Jaeger_Direkt

Die Datenbank besitzt eine Tabelle, die allgemeine Informationen über die angeschlossenen Geräte zu Verfügung stellt. All diese Informationen werden bei der Einrichtung der Geräte im Gateway festgelegt und mit einer Device-Nachricht an die Cloud übertragen.

  • DeviceId: Eine Id, über die sich ein Gerät eindeutig identifizieren lässt. Diese wird vom Hersteller festgelegt.
  • FriendlyId: Eine vom Nutzer festgelegte Id. Sie kann einen beliebigen String enthalten. Sie dient als menschenlesbare Kennungen des Gerätes.
  • DeviceType: Über den DeviceType lassen sich Geräte in logische Gruppen zusammenfassen. Er wird ebenfalls vom Nutzer festgelegt.
  • DeviceLocation: Über diesen Parameter kann die Lage des Geräts bestimmt werden. Hier wird vom Benutzer ein beliebiger String eingetragen.
  • Manufactor: Der Manufactor ist der Hersteller des Geräts. Werden Geräte von unterschiedlichen Herstellern verwendet, können diese so zugeordnet werden.

Prozessdaten

friendlyIdsensorTimeStampbuttonbuttonValue
Socket12019-06-28 06:57:48.900buttonB0pressed

Die Daten, die die Geräte zur Laufzeit produzieren, werden in gerätetypspezifischen Tabellen abgespeichert. Für folgende Geräteklassen liegen Tabellen von:

  • Motion Detectors
  • Shutter Switches
  • Light Switches
  • Sockets
  • Temperature Sensors
  • Window/Door Sensors

Jede dieser Tabellen enthält die Spalten friendlyId und sensorTimeStamp. Darüber lässt sich jeder Eintrag eindeutig identifizieren. Es kann bestimmt werden, von welchen Gerät die Daten stammen und wann sie erzeugt wurden.

Danach folgen Spalten um die Werte festzuhalten. Diese sind für jeden Gerätetyp unterschiedlich, da von jedem System verschiedenen Daten geliefert werden.

  • Motion Detectors
    • motionDetector: Gibt an, was für ein Event ausgelöst wurde
    • motionDetectorValue: Gibt den Wert des Events an
  • Shutter Switches
    • button: Enthält die Information welcher Knopf betätigt wurde
    • buttonValue: Zeigt an, ob der Knopf gedrückt oder losgelassen wurde
  • Light Switches
    • button: Enthält die Information welcher Knopf betätigt wurde
    • buttonValue: Zeigt an, ob der Knopf gedrückt oder losgelassen wurde
  • Sockets
    • button: Enthält die Information welcher Knopf betätigt wurde
    • buttonValue: Zeigt an, ob der Knopf gedrückt oder losgelassen wurde
  • Temperature Sensors
    • temperature: Die, vom Sensor gemessene, Temperatur in °C
    • humidity: Die, vom Sensor gemessene, Luftfeuchtigkeit in %
  • Window/Door Sensors
    • windowStatus: Der Status des Fensters oder der Tür (open/closed)