Skip to content

Applikationsdaten

Tobias Schramm edited this page Jul 6, 2020 · 4 revisions

Der wichtigsten Nachrichtentyp, den der KLAX versendet sind Applikationsdaten. Eine Applikationsdatenübertragung kann mehrer Payloads enthalten. In den Payloads sind die eigentlichen Applikationsdaten verkapselt. Diese werden stets auf Port 3 übertragen und vom Dekoder in folgendes Format dekodiert:

{
  "msgInfo": { // Information zum durch den KLAX versendeten Telegramm
    "msgCnt": 1, // Gesamtanzahl der Pakete in diesem Telegramm
    "msgIdx": 32, // Monoton steigende Telegrammnummer 
    "msgNum": 1 // 1-basierter Index dieses Pakets im Telegramm
  },
  "payloads": [ ... ], // Array von Payloads
  "type": "app" // Indentifikation diese Pakets als Applikationsdaten
}

Mögliche Payloads sind:

  • historic (nur SML, nur mit älteren KLAX Firmwareversionen)
  • filter (nur SML)
  • now (nur SML)
  • serverID (nur SML)
  • deviceID (nur SML)
  • registerFilter (nur MODBUS)
  • modbusRegisterStatus (nur MODBUS)

Eine Beispiel für dekodierte Applikationsdaten mit mehreren Payloads könnte wie folgt aussehen

{
  "header": {
    "batteryPerc": 100,
    "configured": true,
    "connTest": false,
    "deviceType": "SML Klax",
    "meterType": "SML",
    "version": 1
  },
  "msgInfo": {
    "msgCnt": 1,
    "msgIdx": 32,
    "msgNum": 1
  },
  "payloads": [
    {
      "id": "00112233445566778899",
      "type": "serverID"
    },
    {
      "register": {
        "filterActive": true,
        "filterId": 0,
        "unit": "Wh",
        "values": [
          {
            "valid": true,
            "value": 34000
          },
          {
            "valid": true,
            "value": 34000
          },
          {
            "valid": true,
            "value": 34000
          },
          {
            "valid": true,
            "value": 34000
          }
        ]
      },
      "type": "filter"
    }
  ],
  "type": "app"
}
Clone this wiki locally