NEWS
[gelöst] Payload Daten in Objekte schreiben
-
@gregors sagte: schreiben will er immer noch nicht
Dann bau mal Log-Ausgaben ein.
on('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up', function (dp) { log(dp.state.val); let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod; log(payload); -
@gregors sagte: Wo finde ich das Log?
Im Fenster unterhalb des Skript-Editors und im Tab "Protokolle".
Das Skript ist aktiviert und hoffentlich nicht unter der Gruppe "global" erstellt? -
@paul53
Das Script läuft und ist nicht unter "Global".
Im Log steht nichts drin. Komplett leer.Mir scheint, als ob es nicht getriggert wird
-
@paul53
Das Script läuft und ist nicht unter "Global".
Im Log steht nichts drin. Komplett leer.Mir scheint, als ob es nicht getriggert wird
@gregors sagte in Payload Daten in Objekte schreiben:
Mir scheint, als ob es nicht getriggert wird
der Datenpunkt heisst auch genau so:
mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up
? -
@gregors sagte in Payload Daten in Objekte schreiben:
Mir scheint, als ob es nicht getriggert wird
der Datenpunkt heisst auch genau so:
mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up
? -
@homoran
Bin auf Objekt-ID gegangen, und er hat mir zur Auswahl das Objekt angeboten.
Der Datenpunkt wird alle 2 Minuten neu eingelsen (Zeitstempel). Der Wert von AVI1_V ändert sich immer maginal. -
@gregors sagte: Der Wert von AVI1_V ändert sich immer maginal.
Das genügt zum Triggern.
Was ergibt außerhalb des Triggers?log(getState('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up').val);Nichts.
Gähnende Leere im Log//'mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up'/*v3/gs-mg-dragino-01@ttn/devices/eui-a840414601871305/up*/ on('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up', function (dp) { log(dp.state.val); let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod; log(payload); log(getState('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up').val); if(payload && payload.AVI1_V != undefined) { -
Nichts.
Gähnende Leere im Log//'mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up'/*v3/gs-mg-dragino-01@ttn/devices/eui-a840414601871305/up*/ on('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up', function (dp) { log(dp.state.val); let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod; log(payload); log(getState('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up').val); if(payload && payload.AVI1_V != undefined) { -
@gregors sagte: Gähnende Leere im Log
Das Log mit getState() außerhalb des Triggers ausführen!!
-
@paul53
Kann ich das getState() unterhalb des Scripts einfügen, oder muss ich ein Neues Script erstellen? -
@gregors sagte: Kann ich das getState() unterhalb des Scripts einfügen
Ja, unterhalb oder oberhalb des Triggers.
//'mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up'/*v3/gs-mg-dragino-01@ttn/devices/eui-a840414601871305/up*/ on('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up', function (dp) { log(dp.state.val); let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod; log(payload); if(payload && payload.AVI1_V != undefined) { setState("0_userdata.0.LoRaWAN.eui-a840414601871305.ACI1_mA", Math.round(payload.ACI1_mA * 100) / 100, true); setState("0_userdata.0.LoRaWAN.eui-a840414601871305.ACI2_mA", Math.round(payload.ACI2_mA * 100) / 100, true); setState("0_userdata.0.LoRaWAN.eui-a840414601871305.AVI1_V", Math.round(payload.AVI1_V * 100) / 100, true); setState("0_userdata.0.LoRaWAN.eui-a840414601871305.AVI2_V", Math.round(payload.AVI2_V * 100) / 100, true); } }); log(getState('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up').val); -
//'mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up'/*v3/gs-mg-dragino-01@ttn/devices/eui-a840414601871305/up*/ on('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up', function (dp) { log(dp.state.val); let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod; log(payload); if(payload && payload.AVI1_V != undefined) { setState("0_userdata.0.LoRaWAN.eui-a840414601871305.ACI1_mA", Math.round(payload.ACI1_mA * 100) / 100, true); setState("0_userdata.0.LoRaWAN.eui-a840414601871305.ACI2_mA", Math.round(payload.ACI2_mA * 100) / 100, true); setState("0_userdata.0.LoRaWAN.eui-a840414601871305.AVI1_V", Math.round(payload.AVI1_V * 100) / 100, true); setState("0_userdata.0.LoRaWAN.eui-a840414601871305.AVI2_V", Math.round(payload.AVI2_V * 100) / 100, true); } }); log(getState('mqtt.2.v3.gs-mg-dragino-01@ttn.devices.eui-a840414601871305.up').val); -
@gregors
Gut, und das JSON ist in der Log-Ausgabe zu sehen? Sie muss beim Skriptstart erzeugt werden. -
@gregors Multihost? und richtigen Host ausgewählt?
sonst starte die javascript Instanz mal neu
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden


