Zum Hauptinhalt springen
Version: TAO v2.x

Verwendung von HTTP

In diesem Abschnitt wird erläutert, wie Sie den internen HTTP-Server verwenden können, um uplink- und downlink-Pakete zu senden.

Sie können das HTTP-Protokoll verwenden, um uplink-Berichte an externe Anwendungen zu senden.

Diese Berichte umfassen sowohl die uplink-Frame-Berichte mit den von LoRaWAN-Geräten gesendeten anwendungsbezogenen data als auch die Zustellstatusberichte von downlink-Paketen, die von Anwendungen an Ihre LoRaWAN-Geräte angefordert werden. Um mehr über die verschiedenen Ursachen für fehlgeschlagene downlink-Zustellungen zu erfahren, klicken Sie hier und suchen Sie nach DeliveryFailedCause im Bericht DevEUI_downlink_Sent report.

Führen Sie die folgenden Schritte aus, um einen neuen HTTP-Flow in Node-RED zu erstellen. Im folgenden Beispiel werden wir data an einen Webhook senden.

  1. Klicken Sie in Node-RED oben rechts auf der Seite auf Add flow.

    -> Es wird ein leerer Flow erstellt. Die Node-RED-Blöcke werden im nächsten Schritt hinzugefügt.

  2. Ziehen Sie einen MQTT in- und einen HTTP request-Knoten aus dem linken Bereich Ihres Node-RED-Editors in Ihren neuen Flow. Verknüpfen Sie sie dann wie unten dargestellt:

  3. Doppelklicken Sie auf den MQTT-Knoten, um ihn zu konfigurieren, und setzen Sie das Topic auf "/uplink-topic".

  4. Doppelklicken Sie auf den HTTP-Knoten, um die Methode auf POST zu ändern und die Webhook-URL festzulegen

  5. Klicken Sie auf Deploy, um den Flow zu aktivieren. Sobald ein uplink-Paket von Ihrem LoRaWAN-Gerät gesendet wird, sehen Sie den uplink-Bericht in Ihrer Webhook-Liste erscheinen.

Standard-URL ist: http://<box ip>:1323/node-red/downlink

Sie können rohe, codierte downlink-Pakete mit dem Knoten "HTTP INPUT POST" senden (unter Verwendung von payload_hex):

curl  -X POST -d '{"DevEUI_downlink":{"DevEUI":"20635F0106000324","FPort":"2","payload_hex": "0102"}}'  -H 'Content-Type: application/json' http://<box ip>:1323/node-red/downlink
{"response":"queued","payload":{"DevEUI_downlink":{"DevEUI":"20635F0106000324","FPort":"2","payload_hex":"0102"}}}

Anstatt rohe, codierte payloads zu senden, können Sie decodierte downlink-Pakete (unter Verwendung von payload) senden und sich auf die Kodierungsfunktionen von ThingPark Enterprise All-in-one verlassen. Diese Option ist nur für gebrandete Geräte mit integrierten payload-Treibern verfügbar.

curl -X POST -d '{"DevEUI_downlink":{"DevEUI":"20635F0106000324","FPort":"2","payload":{"downMessageType":"REQUEST_CONFIG","ackToken":1},"Confirmed":"1","FlushDownlinkQueue":"1","DriverCfg":{"app":{"pId":"abeeway","mId":"asset-tracker","ver":"2"}}}}'  -H 'Content-Type: application/json' http://<box ip>:1323/node-red/downlink
{"response":"queued","payload":{"DevEUI_downlink":{"DevEUI":"20635F0106000324","FPort":"2","payload":{"downMessageType":"REQUEST_CONFIG","ackToken":1},"Confirmed":"1","FlushDownlinkQueue":"1","DriverCfg":{"app":{"pId":"abeeway","mId":"asset-tracker","ver":"2"}}}}}