Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Payload Daten in Objekte schreiben

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Payload Daten in Objekte schreiben

    This topic has been deleted. Only users with topic management privileges can see it.
    • GregorS
      GregorS last edited by

      @paul53

      Habe ich ausprobiert.
      Keine Fehler mehr, aber es wird nichts in die Objekte geschrieben.

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @GregorS last edited by

        @gregors sagte: es wird nichts in die Objekte geschrieben.

        Es wird getriggert, d.h. die ID stimmt?

        GregorS 1 Reply Last reply Reply Quote 0
        • GregorS
          GregorS @paul53 last edited by GregorS

          @paul53

          Kann ich nicht erkennen.
          Zur Auswahl unter ID bekam ich nur das Objekt UP angeboten.

          '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) {
          
              let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod;
          
              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);
          
              }
          
          });
          

          Kann ich auch mit einem Schedule jede Minute triggern?

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @GregorS last edited by

            @gregors sagte: Objekt UP

            Ändert sich der Inhalt? Es wird nur bei Wertänderung getriggert.

            GregorS 1 Reply Last reply Reply Quote 0
            • GregorS
              GregorS @paul53 last edited by

              @paul53
              Der Wert im Payload ändert sich.
              Allerdings nur AVI1_V, da es zur Zeit der einzige angeschlossene Wert ist.

              Was bedeutet diese Zeile:

              if(payload && payload.AVI1_V != undefined) {
              

              Es gibt doch 4 Variablen mit Daten.

              Der Wert von 0_userdata.0.LoRaWAN.eui-a840414601871305.AVI1_V bleibt "0"
              Habe ihn händisch als Datenpunkt "Number" angelegt.

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @GregorS last edited by paul53

                @gregors sagte: Was bedeutet diese Zeile:

                Es wird geprüft, ob das payload-Objekt vorhanden ist und ob es "AVI1_V" enthält.

                @gregors sagte in Payload Daten in Objekte schreiben:

                Es gibt doch 4 Variablen mit Daten.

                Wenn "AVI1_V" enthalten ist, sind die anderen auch vorhanden.

                Die Zeile 1 mit der ID ist hoffentlich als Kommentar gekennzeichnet?

                GregorS 1 Reply Last reply Reply Quote 0
                • GregorS
                  GregorS @paul53 last edited by

                  @paul53

                  Die Zeile 1 war natürlich nicht als Kommentar gekennzeichnet.
                  Habe ich aber nachgeholt.
                  Aber die Werte stehen immer noch auf 0
                  Fehler gibt es keine

                  //'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) {
                      let payload = JSON.parse(dp.state.val).uplink_message.decoded_paylod;
                      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);
                      }
                  });
                  
                  Homoran 2 Replies Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @GregorS last edited by Homoran

                    @gregors bleibt noch die uralte Frage

                    @homoran sagte in Payload Daten in Objekte schreiben:

                    es kommen auch immer nur diese Attribute an?

                    bzw. nach dem Hinweis von

                    @marc-berg sagte in Payload Daten in Objekte schreiben:

                    Nur ein kleiner Hinweis, der LT22222 hat die unangenehme Eigenschaft, abhängig vom "work_mode" unterschiedliche Payloads bereitzustellen.

                    die Variante:

                    was kommt da zurück?
                    u d zwar bei dedem Abruf?

                    GregorS 1 Reply Last reply Reply Quote 0
                    • GregorS
                      GregorS @Homoran last edited by

                      @homoran

                      Ist eingestellt auf Work-Mode.

                      {"end_device_ids":{"device_id":"eui-a840414601871305","application_ids":{"application_id":"gs-mg-dragino-01"},"dev_eui":"A840414601871305","join_eui":"A840410000000101","dev_addr":"260BE9CF"},"correlation_ids":["as:up:01H5YXJP5QRH1C5Q08ZD5DCSP3","gs:conn:01H5CGRTDQJ3EW5BPQ15D9SVP8","gs:up:host:01H5CGRTDY5KEGKQ0AQZ22XD9M","gs:uplink:01H5YXJNZ91PEK9H5YJ9MQ3KHY","ns:uplink:01H5YXJNZABG7H54KY0GZK1EHM","rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01H5YXJNZ9DDEYD157A8ZJ4MDJ","rpc:/ttn.lorawan.v3.NsAs/HandleUplink:01H5YXJP5PHV0DBWATNA897E9W"],"received_at":"2023-07-22T13:45:43.350790106Z","uplink_message":{"session_key_id":"AYlu5XV3aMaeiMVAq8yISw==","f_port":2,"f_cnt":4181,"frm_payload":"NhMAAAAAAAA0/0E=","decoded_payload":{"ACI1_mA":0, "ACI2_mA":0, "%(#ff0000)[AVI1_V":13.843], "AVI2_V":0, "DI1_status":"L", "DI2_status":"H", "DO1_status":"H", "DO2_status":"H", "Hardware_mode":"LT22222", "RO1_status":"OFF", "RO2_status":"OFF", "Work_mode":"2ACI+2AVI"},"rx_metadata":[{"gateway_ids":{"gateway_id":"eui-503139534e7d4750","eui":"503139534E7D4750"},"time":"2023-07-22T13:45:35.699393Z","timestamp":518644732,"rssi":-104,"channel_rssi":-104,"snr":-16.75,"uplink_token":"CiIKIAoUZXVpLTUwMzEzOTUzNGU3ZDQ3NTASCFAxOVNOfUdQEPzHp/cBGgsIh7vvpQYQpY2KRSDgoIqNjN+MAQ==","channel_index":1,"received_at":"2023-07-22T13:45:43.144869029Z"}],"settings":{"data_rate":{"lora":{"bandwidth":125000, "spreading_factor":12, "coding_rate":"4/5"}}, "frequency":"868300000", "timestamp":518644732, "time":"2023-07-22T13:45:35.699393Z"},"received_at":"2023-07-22T13:45:43.146061623Z","consumed_airtime":"1.482752s","version_ids":{"brand_id":"dragino", "model_id":"lt22222-l", "hardware_version":"_unknown_hw_version_", "firmware_version":"1.5.6", "band_id":"EU_863_870"},"network_ids":{"net_id":"000013","tenant_id":"ttn","cluster_id":"eu1","cluster_address":"eu1.cloud.thethings.network"}}}
                      
                      {"end_device_ids":{"device_id":"eui-a840414601871305","application_ids":{"application_id":"gs-mg-dragino-01"},"dev_eui":"A840414601871305","join_eui":"A840410000000101","dev_addr":"260BE9CF"},"correlation_ids":["as:up:01H5YXZGAF6GPBPJ5YGPPSXD5G","gs:conn:01H5CGRTDQJ3EW5BPQ15D9SVP8","gs:up:host:01H5CGRTDY5KEGKQ0AQZ22XD9M","gs:uplink:01H5YXZG3X91BKRBXDNHEJCVKW","ns:uplink:01H5YXZG3ZTVCN6ZG22DTRD5F6","rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01H5YXZG3YM34J05XBMH8KEXC7","rpc:/ttn.lorawan.v3.NsAs/HandleUplink:01H5YXZGAE19SK5WXQGSAY4RX2"],"received_at":"2023-07-22T13:52:43.342421706Z","uplink_message":{"session_key_id":"AYlu5XV3aMaeiMVAq8yISw==","f_port":2,"f_cnt":4188,"frm_payload":"NjsAAAAAAAA0/0E=","decoded_payload":{"ACI1_mA":0, "ACI2_mA":0, "%(#ff0000)[%(#ff0000)[***AVI1_V":13.883***]], "AVI2_V":0, "DI1_status":"L", "DI2_status":"H", "DO1_status":"H", "DO2_status":"H", "Hardware_mode":"LT22222", "RO1_status":"OFF", "RO2_status":"OFF", "Work_mode":"2ACI+2AVI"},"rx_metadata":[{"gateway_ids":{"gateway_id":"eui-503139534e7d4750","eui":"503139534E7D4750"},"time":"2023-07-22T13:52:35.686763Z","timestamp":938637580,"rssi":-109,"channel_rssi":-109,"snr":-15,"uplink_token":"CiIKIAoUZXVpLTUwMzEzOTUzNGU3ZDQ3NTASCFAxOVNOfUdQEIzyyb8DGgsIq77vpQYQ7pDNPyDgraPZqOuMAQ==","channel_index":3,"received_at":"2023-07-22T13:52:43.133384302Z"},{"gateway_ids":{"gateway_id":"eui-7076ff0056080b0f","eui":"7076FF0056080B0F"},"time":"2023-07-22T13:52:43.065Z","timestamp":2744651724,"rssi":-112,"channel_rssi":-112,"snr":-9.5,"uplink_token":"CiIKIAoUZXVpLTcwNzZmZjAwNTYwODBiMGYSCHB2/wBWCAsPEMyf4JwKGgsIq77vpQYQrK2YTCDg6fbP8OMjKgsIq77vpQYQwKT/Hg==","gps_time":"2023-07-22T13:52:43.065Z","received_at":"2023-07-22T13:52:42.856942638Z"}],"settings":{"data_rate":{"lora":{"bandwidth":125000, "spreading_factor":12, "coding_rate":"4/5"}}, "frequency":"867100000", "timestamp":938637580, "time":"2023-07-22T13:52:35.686763Z"},"received_at":"2023-07-22T13:52:43.135020669Z","consumed_airtime":"1.482752s","version_ids":{"brand_id":"dragino", "model_id":"lt22222-l", "hardware_version":"_unknown_hw_version_", "firmware_version":"1.5.6", "band_id":"EU_863_870"},"network_ids":{"net_id":"000013","tenant_id":"ttn","cluster_id":"eu1","cluster_address":"eu1.cloud.thethings.network"}}}
                      

                      Der Payload ist immer gleich.

                      paul53 Marc Berg 2 Replies Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @GregorS last edited by

                        @gregors sagte in Payload Daten in Objekte schreiben:

                        Aber die Werte stehen immer noch auf 0

                        alle?
                        avi2_v ist 0
                        aci1_mA ebenfalls

                        avi1_v hat 3 Asterisk davor u d wird deswegen nicht erkannt

                        1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @GregorS last edited by paul53

                          @gregors sagte: Der Payload ist immer gleich.

                          "%(#ff0000)[AVI1_V":13.843]
                          

                          ist ungültig und kann deshalb nicht geparst werden. In der zweiten Ausgabe sieht es noch schlimmer aus.

                          "%(#ff0000)[%(#ff0000)[***AVI1_V":13.883***]]
                          
                          GregorS 1 Reply Last reply Reply Quote 0
                          • GregorS
                            GregorS @paul53 last edited by

                            @homoran

                            Habe zur Zeit nur den AVI1_V angeschlossen und DI2 gebrückt.
                            Alle anderen Eingänge sind offen.
                            Ist erstmal ein Test.

                            @paul53 said in Payload Daten in Objekte schreiben:

                            ist ungültig und kann deshalb nicht geparst werden. In der zweiten Ausgabe sieht es noch schlimmer aus.

                            Bedeutet, ich kann es vergessen.

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @GregorS last edited by paul53

                              @gregors sagte: Bedeutet, ich kann es vergessen.

                              Es gibt dafür eine Ursache (beim Sender?), die behoben werden muss.
                              Hier war das JSON noch in Ordnung.

                              1 Reply Last reply Reply Quote 0
                              • Marc Berg
                                Marc Berg Most Active @GregorS last edited by Marc Berg

                                @gregors sagte in Payload Daten in Objekte schreiben:

                                %(#ff0000)[%(#ff0000)

                                sowas hier:

                                %(#ff0000)[%(#ff0000)
                                

                                darf nicht im Payload enthalten sein und es ist mir ein Rätsel, wie das da rein kommt. Schau dir nochmal deinen Payload Formatter im TTN an. Da muss ein Fehler drin sein.

                                Am besten den von hier nehmen:

                                https://github.com/dragino/dragino-end-node-decoder/tree/main/LT22222-L

                                Ggf. auch eine ältere Version.

                                Homoran 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @Marc Berg last edited by Homoran

                                  @marc-berg das ist wohl fett kursiv in rot

                                  Marc Berg 1 Reply Last reply Reply Quote 0
                                  • Marc Berg
                                    Marc Berg Most Active @Homoran last edited by

                                    @homoran sagte in Payload Daten in Objekte schreiben:

                                    das ist wohl fett kursiv in rot

                                    Okay.... Das hat aber im TTN Payload mal so gar nichts verloren! 🙂

                                    GregorS 1 Reply Last reply Reply Quote 1
                                    • GregorS
                                      GregorS @Marc Berg last edited by GregorS

                                      Habe jetzt mal den Payload-Formater aus dem Github bearbeitet.

                                      {"end_device_ids":{"device_id":"eui-a840414601871305","application_ids":{"application_id":"gs-mg-dragino-01"},"dev_eui":"A840414601871305","join_eui":"A840410000000101","dev_addr":"260BE9CF"},"correlation_ids":["as:up:01H5Z2SA3QYET8CA17EXT5JBTW","gs:conn:01H5CGRTDQJ3EW5BPQ15D9SVP8","gs:up:host:01H5CGRTDY5KEGKQ0AQZ22XD9M","gs:uplink:01H5Z2S9XAF07SYS81675AYS9E","ns:uplink:01H5Z2S9XA7M8VZFX5JQQYWM6H","rpc:/ttn.lorawan.v3.GsNs/HandleUplink:01H5Z2S9XAH04P0Z8XWMYHP6RC","rpc:/ttn.lorawan.v3.NsAs/HandleUplink:01H5Z2SA3P57YV40D8MQMJFC70"],"received_at":"2023-07-22T15:16:43.254682567Z","uplink_message":{"session_key_id":"AYlu5XV3aMaeiMVAq8yISw==","f_port":2,"f_cnt":4272,"frm_payload":"NhUAAAAAAAA0/0E=","decoded_payload":{"ACI1_mA":"0.000", "ACI2_mA":"0.000", "AVI1_V":"13.845", "AVI2_V":"0.000", "Acount_times":null, "Count1_times":null, "Count2_times":null, "DI1_status":"L", "DI2_status":"H", "DI3_status":null, "DO1_status":"H", "DO2_status":"H", "DO3_status":null, "First_status":null, "Hardware_mode":"LT22222", "RO1_status":"OFF", "RO2_status":"OFF", "Work_mode":"2ACI+2AVI"},"rx_metadata":[{"gateway_ids":{"gateway_id":"eui-503139534e7d4750","eui":"503139534E7D4750"},"time":"2023-07-22T15:16:35.538289Z","timestamp":1683586436,"rssi":-104,"channel_rssi":-104,"snr":-15.5,"uplink_token":"CiIKIAoUZXVpLTUwMzEzOTUzNGU3ZDQ3NTASCFAxOVNOfUdQEIT75aIGGgsI2+XvpQYQyq/mFyCgl8ns//2NAQ==","channel_index":4,"received_at":"2023-07-22T15:16:43.049911754Z"}],"settings":{"data_rate":{"lora":{"bandwidth":125000, "spreading_factor":12, "coding_rate":"4/5"}}, "frequency":"867300000", "timestamp":1683586436, "time":"2023-07-22T15:16:35.538289Z"},"received_at":"2023-07-22T15:16:43.050935418Z","consumed_airtime":"1.482752s","version_ids":{"brand_id":"dragino", "model_id":"lt22222-l", "hardware_version":"_unknown_hw_version_", "firmware_version":"1.5.6", "band_id":"EU_863_870"},"network_ids":{"net_id":"000013","tenant_id":"ttn","cluster_id":"eu1","cluster_address":"eu1.cloud.thethings.network"}}}
                                      

                                      Konnte jetzt keine Asterix erkennen.
                                      Aber schreiben will er immer noch nicht

                                      paul53 1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @GregorS last edited by

                                        @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 1 Reply Last reply Reply Quote 1
                                        • GregorS
                                          GregorS @paul53 last edited by

                                          @paul53

                                          Habe ich gemacht.
                                          Wo finde ich das Log?

                                          paul53 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @GregorS last edited by paul53

                                            @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?

                                            GregorS 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            426
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            78
                                            3052
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo