Zum Inhalt

HTTP Push

Mit HTTP Push können über die HTTP Methode POST Nachrichten vom Server an gewünschte Anwendungen oder Endgeräte geschickt werden, ohne dass diese die Daten jedesmal selbst anfordern müssen. So ist es möglich, Daten ohne Mehraufwand seitens der Benutzer zu senden und die Performance von Anwendungen zu steigern, welche auf diese Daten angewiesen sind.

Aufbau einer Nachricht

Nachfolgend ist ersichtlich, wie eine beispielhafte und für Sie kommentierte Nachricht aussieht:

{
"httpIntegrationId": 6, // internal id of the integration (unique identifier for http integrations)
"deviceId": 18, // internal id of the device (unique identifier for devices)
"deviceName": "Elsys ERS CO2", // name of the device
"deviceGroupId": 15, // internal group id the device is linked to by integration company
"externalDeviceId": "a81758fffe05285c", // external id of the device (DevEUI in case of LoRa)
"messageId": "074e54d0-56ba-4a46-9317-2ea8b31bf458", // internal id of the message (unique identifier for messages)
"type": "LORA", // source system type (all source system types are possible here)
"action": "UPLINK", // always UPLINK
"timestamp": "2021-04-21T14:39:34.493Z", // timestamp on which the message was received
"dataFrame": "0100d602240400070504060223070e30", // hex encoded payload in case of LoRa; also json is possible here
"rawJson": "{\"temperature\":21.4,\"humidity\":36,\"light\":7,\"motion\":4,\"co2\":547,\"vdd\":3.632}", // parsed json from 'dataFrame'
"metricDeviceMessages": [ // all extracted metrics for this message
    {
        "metricId": 3, // internal metric id (unique identifier for metrics)
        "metricName": "co2", // name of the metric
        "metricTypeId": 2, // internal metric type id (unique identifier for metric types, but can be used by multiple metrics)
        "metricTypeName": "CO2", // name of the metric type
        "metricDataType": "INT", // data type of the metric (Possible values are: INT, FLOAT, BOOLEAN, STRING)
        "metricUnit": "ppm", // unit of the metric
        "metricValue": 547 // value of the metric (data type can be read from 'metricDataType')
    }
    // ... more possible
],
"rssi": -57, // only in case of LoRa
"framePort": 5, // only in case of LoRa
"loraSnr": 11, // only in case of LoRa
"dataRate": 0, // only in case of LoRa
"frameCounter": 51731 // only in case of LoRa
}