Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    411

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON

Scheduled Pinned Locked Moved ioBroker Allgemein
67 Posts 6 Posters 7.1k Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mickymM mickym

    @negalein Ich bekomme Deinen Fehler wie gesagt nicht. Auch nicht im Log. Hab deinen kompletten JSON bei mir reinkopiert. Insofern schwierig für mich nachzuvollziehen. Du kannst ja auch mit einfachen Hochkomma nutzen, Du musst es halt in der Maske eintragen und nicht in dem Common Objekt, sonst musst halt mit \ die Gänsefüsschen maskieren.

    Bei mir tut das in der Maske eingegeben ohne Probleme:

    48f3d424-95b5-4dbb-9609-f9ce5403be45-image.png

    Dein zuerst gepostetes JSON war ja unvollständig, aber mit dem vollständigen funktioniert es auch.

    NegaleinN Offline
    NegaleinN Offline
    Negalein
    Global Moderator
    wrote on last edited by
    #46

    @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

    Du musst es halt in der Maske eintragen und nicht in dem Common Objekt

    Common schaut so aus

    {
      "type": "state",
      "common": {
        "name": "IQ_Sprit",
        "role": "state",
        "type": "string",
        "read": true,
        "write": true,
        "alias": {
          "id": "0_userdata.0.IQ_Sprit.IQ_Sprit",
          "read": "JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price"
        }
      },
      "_id": "alias.0.IQ-Sprit.Diesel.Preis.IQ_Sprit",
      "native": {},
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      },
      "from": "system.adapter.admin.0",
      "user": "system.user.admin",
      "ts": 1670534620818
    }
    

    Und so in der Maske (bereits mit einfachem Hochkomma)
    adf325c8-2f2f-4cbb-8621-4ec4bf77fff5-image.png
    JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price

    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
    ° Node.js Fixer ---> iob nodejs-update
    ° Fixer ---> iob fix

    mickymM 1 Reply Last reply
    0
    • NegaleinN Offline
      NegaleinN Offline
      Negalein
      Global Moderator
      wrote on last edited by
      #47

      @mickym

      sehe gerade, dass das im Log noch von alten Konvertierungsfunktion ist.

      Invalid read function for undefined: JSON.parse(val).Diesel.price => Cannot read properties of undefined (reading 'price')

      Eingetragen ist aber schon JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price

      Werde mal neu starten.

      ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
      ° Node.js Fixer ---> iob nodejs-update
      ° Fixer ---> iob fix

      1 Reply Last reply
      0
      • NegaleinN Negalein

        @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

        Du musst es halt in der Maske eintragen und nicht in dem Common Objekt

        Common schaut so aus

        {
          "type": "state",
          "common": {
            "name": "IQ_Sprit",
            "role": "state",
            "type": "string",
            "read": true,
            "write": true,
            "alias": {
              "id": "0_userdata.0.IQ_Sprit.IQ_Sprit",
              "read": "JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price"
            }
          },
          "_id": "alias.0.IQ-Sprit.Diesel.Preis.IQ_Sprit",
          "native": {},
          "acl": {
            "object": 1636,
            "state": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator"
          },
          "from": "system.adapter.admin.0",
          "user": "system.user.admin",
          "ts": 1670534620818
        }
        

        Und so in der Maske (bereits mit einfachem Hochkomma)
        adf325c8-2f2f-4cbb-8621-4ec4bf77fff5-image.png
        JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price

        mickymM Online
        mickymM Online
        mickym
        Most Active
        wrote on last edited by mickym
        #48

        @negalein Irgendwie stimmt bei Dir was oben nicht - mit dem Anhaken der unterschiedlichen Lesen Schreiben Funktion.

        Na ich weiss den Fehler. Du hast den nicht auf ReadOnly gesetzt. Wenn Du schreiben willst musst halt da das stringify setzen. Der Fehler tritt natürlich nur auf wenn Du in den Alias schreiben willst und da hast Du weder unterschiedliche Punkte angegeben.

        Wie gesagt wenn Du das nur extrahieren willst und nicht schreiben setz den Alias mal auf ReadOnly

        Oh ich sehe gerade da gibts einen Bug mit dem Alias. Der zerstört den Quelldatenpunkt auch wenn ReadOnly gesetzt ist und schreibt. Dann musst halt bei Schreiben auch setzen.

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        NegaleinN 1 Reply Last reply
        0
        • mickymM mickym

          @negalein Irgendwie stimmt bei Dir was oben nicht - mit dem Anhaken der unterschiedlichen Lesen Schreiben Funktion.

          Na ich weiss den Fehler. Du hast den nicht auf ReadOnly gesetzt. Wenn Du schreiben willst musst halt da das stringify setzen. Der Fehler tritt natürlich nur auf wenn Du in den Alias schreiben willst und da hast Du weder unterschiedliche Punkte angegeben.

          Wie gesagt wenn Du das nur extrahieren willst und nicht schreiben setz den Alias mal auf ReadOnly

          Oh ich sehe gerade da gibts einen Bug mit dem Alias. Der zerstört den Quelldatenpunkt auch wenn ReadOnly gesetzt ist und schreibt. Dann musst halt bei Schreiben auch setzen.

          NegaleinN Offline
          NegaleinN Offline
          Negalein
          Global Moderator
          wrote on last edited by Negalein
          #49

          @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

          Wie gesagt wenn Du das nur extrahieren willst und nicht schreiben setz den Alias mal auf ReadOnly

          Ja, nur vom orig. DP in den Alias schreiben (konvertiert).

          Du meinst da auch das JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price bei Write eintragen?
          8b10ee3a-b331-44c6-a557-d40082c03107-image.png

          Bzw. da
          769285f4-e495-4ee5-a855-3be56d093445-image.png

          ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
          ° Node.js Fixer ---> iob nodejs-update
          ° Fixer ---> iob fix

          mickymM 1 Reply Last reply
          0
          • NegaleinN Negalein

            @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

            Wie gesagt wenn Du das nur extrahieren willst und nicht schreiben setz den Alias mal auf ReadOnly

            Ja, nur vom orig. DP in den Alias schreiben (konvertiert).

            Du meinst da auch das JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price bei Write eintragen?
            8b10ee3a-b331-44c6-a557-d40082c03107-image.png

            Bzw. da
            769285f4-e495-4ee5-a855-3be56d093445-image.png

            mickymM Online
            mickymM Online
            mickym
            Most Active
            wrote on last edited by mickym
            #50

            @negalein Also im Prinzip taucht der Fehler nicht auf, wenn Du nicht in den Alias schreibst. Sonst musst Du das gesamte Objekt mir stringfy schreiben. ist aber doof in meinen Augen. Nein nicht parsen. Also das Problem ist, dass das ReadOnly im Alias nicht funktioniert. Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

            Ja so kann man das Teil überlisten ohne Log Einträge:

            a3e1d520-d59f-4a4e-8265-0c429fc530df-image.png

            und den Alias selbst auf ReadOnly:

            91ab7402-8834-4b21-9a28-47a206df4285-image.png

            Der dummy Datenpunkt muss nicht existieren:

              "common": {
                "name": "jsonState",
                "desc": "Manuell erzeugt",
                "role": "state",
                "type": "string",
                "read": true,
                "write": false,
                "def": "",
                "alias": {
                  "id": {
                    "read": "0_userdata.0.Test.jsonState",
                    "write": "0_userdata.0.Test.jsonState.dummy"
                  },
                  "read": "JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price"
                }
              }
            

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            NegaleinN 1 Reply Last reply
            0
            • mickymM mickym

              @negalein Also im Prinzip taucht der Fehler nicht auf, wenn Du nicht in den Alias schreibst. Sonst musst Du das gesamte Objekt mir stringfy schreiben. ist aber doof in meinen Augen. Nein nicht parsen. Also das Problem ist, dass das ReadOnly im Alias nicht funktioniert. Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

              Ja so kann man das Teil überlisten ohne Log Einträge:

              a3e1d520-d59f-4a4e-8265-0c429fc530df-image.png

              und den Alias selbst auf ReadOnly:

              91ab7402-8834-4b21-9a28-47a206df4285-image.png

              Der dummy Datenpunkt muss nicht existieren:

                "common": {
                  "name": "jsonState",
                  "desc": "Manuell erzeugt",
                  "role": "state",
                  "type": "string",
                  "read": true,
                  "write": false,
                  "def": "",
                  "alias": {
                    "id": {
                      "read": "0_userdata.0.Test.jsonState",
                      "write": "0_userdata.0.Test.jsonState.dummy"
                    },
                    "read": "JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price"
                  }
                }
              
              NegaleinN Offline
              NegaleinN Offline
              Negalein
              Global Moderator
              wrote on last edited by
              #51

              @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

              Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

              kannst du das für mich verständlicher Beschreiben? Ich versteh gerade nur Bahnhof. :disappointed_relieved:

              ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
              ° Node.js Fixer ---> iob nodejs-update
              ° Fixer ---> iob fix

              mickymM paul53P 2 Replies Last reply
              0
              • NegaleinN Negalein

                @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

                kannst du das für mich verständlicher Beschreiben? Ich versteh gerade nur Bahnhof. :disappointed_relieved:

                mickymM Online
                mickymM Online
                mickym
                Most Active
                wrote on last edited by
                #52

                @negalein sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

                kannst du das für mich verständlicher Beschreiben? Ich versteh gerade nur Bahnhof. :disappointed_relieved:

                Also das Problem mit den Log-Einträgen entsteht nur, wenn Du in den Alias was schreibst. Du willst aber doch nur den Preis auslesen? - Richtig?

                Deshalb sollte man den Alias auf ReadOnly stellen. Das scheint aber nicht auszureichen. Deswegen einen Dummy Datenpunkt zum Schreiben angeben. Der muss nicht existieren. Dann sollte es gehen. Ich hab Dir die Screenshots im letzten Post gepostet.

                Oder willst Du selbst Preise schreiben? - Glaub ich eigentlich nicht, sonst musst Du das ganze Objekt in die Schreibfunktion kopieren.

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                NegaleinN 1 Reply Last reply
                0
                • NegaleinN Negalein

                  @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                  Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

                  kannst du das für mich verständlicher Beschreiben? Ich versteh gerade nur Bahnhof. :disappointed_relieved:

                  paul53P Offline
                  paul53P Offline
                  paul53
                  wrote on last edited by
                  #53

                  @negalein
                  Der Dummy-Datenpunkt verhindert, dass der Alias einen ungültigen Wert in den Original-Datenpunkt schreibt.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  1 Reply Last reply
                  0
                  • mickymM mickym

                    @negalein sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                    @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                    Du kannst als Umgehung einfach in einen Dummy Datenpunkt schreiben.

                    kannst du das für mich verständlicher Beschreiben? Ich versteh gerade nur Bahnhof. :disappointed_relieved:

                    Also das Problem mit den Log-Einträgen entsteht nur, wenn Du in den Alias was schreibst. Du willst aber doch nur den Preis auslesen? - Richtig?

                    Deshalb sollte man den Alias auf ReadOnly stellen. Das scheint aber nicht auszureichen. Deswegen einen Dummy Datenpunkt zum Schreiben angeben. Der muss nicht existieren. Dann sollte es gehen. Ich hab Dir die Screenshots im letzten Post gepostet.

                    Oder willst Du selbst Preise schreiben? - Glaub ich eigentlich nicht, sonst musst Du das ganze Objekt in die Schreibfunktion kopieren.

                    NegaleinN Offline
                    NegaleinN Offline
                    Negalein
                    Global Moderator
                    wrote on last edited by
                    #54

                    @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                    Ich hab Dir die Screenshots im letzten Post gepostet.

                    Ich habs jetzt genau so gemacht

                    10d1623a-7d35-493a-a43e-db2285ba9b9a-image.png
                    6b7d1d05-3133-4ffd-a801-f8d50b9f44b7-image.png

                    Aber trotzdem kommt

                    web.0 2022-12-10 19:13:28.743	error	Invalid read function for undefined: JSON.parse(val).Diesel.price => Cannot read properties of undefined (reading 'price')
                    

                    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                    ° Node.js Fixer ---> iob nodejs-update
                    ° Fixer ---> iob fix

                    mickymM 1 Reply Last reply
                    0
                    • NegaleinN Negalein

                      @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                      Ich hab Dir die Screenshots im letzten Post gepostet.

                      Ich habs jetzt genau so gemacht

                      10d1623a-7d35-493a-a43e-db2285ba9b9a-image.png
                      6b7d1d05-3133-4ffd-a801-f8d50b9f44b7-image.png

                      Aber trotzdem kommt

                      web.0 2022-12-10 19:13:28.743	error	Invalid read function for undefined: JSON.parse(val).Diesel.price => Cannot read properties of undefined (reading 'price')
                      
                      mickymM Online
                      mickymM Online
                      mickym
                      Most Active
                      wrote on last edited by mickym
                      #55

                      @negalein Bei Lesen sehe ich 2mal IQ_Sprit???

                      b4af6fd6-9dd9-4a1c-8e4a-0b5ce3d056b5-image.png

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      NegaleinN 1 Reply Last reply
                      0
                      • mickymM mickym

                        @negalein Bei Lesen sehe ich 2mal IQ_Sprit???

                        b4af6fd6-9dd9-4a1c-8e4a-0b5ce3d056b5-image.png

                        NegaleinN Offline
                        NegaleinN Offline
                        Negalein
                        Global Moderator
                        wrote on last edited by
                        #56

                        @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                        Bei Lesen sehe ich 2mal IQ_Sprit???

                        Ja, das passt
                        2aaaa11c-096d-464e-b9d6-33f095d84ef2-image.png

                        Was mich wundert, dass im Log immer JSON.parse(val).Diesel.price anstatt JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price steht.

                        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                        ° Node.js Fixer ---> iob nodejs-update
                        ° Fixer ---> iob fix

                        paul53P mickymM 2 Replies Last reply
                        0
                        • NegaleinN Negalein

                          @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                          Bei Lesen sehe ich 2mal IQ_Sprit???

                          Ja, das passt
                          2aaaa11c-096d-464e-b9d6-33f095d84ef2-image.png

                          Was mich wundert, dass im Log immer JSON.parse(val).Diesel.price anstatt JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price steht.

                          paul53P Offline
                          paul53P Offline
                          paul53
                          wrote on last edited by
                          #57

                          @negalein sagte: im Log immer JSON.parse(val).Diesel.price

                          Ein vergessener Alias? Wenn nicht, starte mal ioBroker neu.

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          NegaleinN 1 Reply Last reply
                          0
                          • NegaleinN Negalein

                            @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                            Bei Lesen sehe ich 2mal IQ_Sprit???

                            Ja, das passt
                            2aaaa11c-096d-464e-b9d6-33f095d84ef2-image.png

                            Was mich wundert, dass im Log immer JSON.parse(val).Diesel.price anstatt JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price steht.

                            mickymM Online
                            mickymM Online
                            mickym
                            Most Active
                            wrote on last edited by mickym
                            #58

                            @negalein Schau mal dass das common Objekt so aussieht, wie ich gepostet habe. Es muss diese unterschiedliche IDs für Lesen und Schreiben angehakt sein.

                            88c61586-6a2a-4d7f-bfba-5a3b45504c16-image.png

                            Und beim Lesen darf der Fehler nicht auftreten. Also wie @paul53 gesagt hat durchsuchen, ob noch eine Definition drin ist oder mal neu starten.

                            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                            NegaleinN 1 Reply Last reply
                            0
                            • mickymM mickym

                              @negalein Schau mal dass das common Objekt so aussieht, wie ich gepostet habe. Es muss diese unterschiedliche IDs für Lesen und Schreiben angehakt sein.

                              88c61586-6a2a-4d7f-bfba-5a3b45504c16-image.png

                              Und beim Lesen darf der Fehler nicht auftreten. Also wie @paul53 gesagt hat durchsuchen, ob noch eine Definition drin ist oder mal neu starten.

                              NegaleinN Offline
                              NegaleinN Offline
                              Negalein
                              Global Moderator
                              wrote on last edited by
                              #59

                              @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                              Schau mal dass das common Objekt so aussieht, wie ich gepostet habe. Es muss diese unterschiedliche IDs für Lesen und Schreiben angehakt sein.

                              Ja, das passt

                              oder mal neu starten.

                              schon dabei

                              ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                              ° Node.js Fixer ---> iob nodejs-update
                              ° Fixer ---> iob fix

                              mickymM 1 Reply Last reply
                              0
                              • paul53P paul53

                                @negalein sagte: im Log immer JSON.parse(val).Diesel.price

                                Ein vergessener Alias? Wenn nicht, starte mal ioBroker neu.

                                NegaleinN Offline
                                NegaleinN Offline
                                Negalein
                                Global Moderator
                                wrote on last edited by
                                #60

                                @paul53 sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                                Wenn nicht, starte mal ioBroker neu.

                                @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                                oder mal neu starten.

                                Läuft

                                Ein Reboot tut gut ;)

                                ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                ° Node.js Fixer ---> iob nodejs-update
                                ° Fixer ---> iob fix

                                1 Reply Last reply
                                0
                                • NegaleinN Negalein

                                  @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                                  Schau mal dass das common Objekt so aussieht, wie ich gepostet habe. Es muss diese unterschiedliche IDs für Lesen und Schreiben angehakt sein.

                                  Ja, das passt

                                  oder mal neu starten.

                                  schon dabei

                                  mickymM Online
                                  mickymM Online
                                  mickym
                                  Most Active
                                  wrote on last edited by
                                  #61

                                  @negalein Wie gesagt Du musst suchen, ob Du noch woanders ein fehlerhaften Alias definiert hast.

                                  Diese Meldung ist noch was altes:

                                   JSON.parse(val).Diesel.price
                                  

                                  Da hattest Du noch kein Array angegeben.

                                  Wie gesagt der Bug in der Alias Funktion ist, dass sie den originären Datenpunkt überschreibt auch wenn read-only angegeben ist.

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  NegaleinN 1 Reply Last reply
                                  0
                                  • mickymM mickym

                                    @negalein Wie gesagt Du musst suchen, ob Du noch woanders ein fehlerhaften Alias definiert hast.

                                    Diese Meldung ist noch was altes:

                                     JSON.parse(val).Diesel.price
                                    

                                    Da hattest Du noch kein Array angegeben.

                                    Wie gesagt der Bug in der Alias Funktion ist, dass sie den originären Datenpunkt überschreibt auch wenn read-only angegeben ist.

                                    NegaleinN Offline
                                    NegaleinN Offline
                                    Negalein
                                    Global Moderator
                                    wrote on last edited by
                                    #62

                                    @mickym sagte in OpenMQTT Gateway Wetterstation Iobroker Datenpunkt JSON:

                                    Diese Meldung ist noch was altes:

                                    Ja, das war vom alten Script. Da sah das JSON anders aus.
                                    Den dürfte er trotz Änderung (sind ja nur 1 oorig. JSON und 2 Alias-DP verschluckt haben.

                                    Jetzt nach reboot kommt auch keine Fehlermeldung. :)

                                    ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                    ° Node.js Fixer ---> iob nodejs-update
                                    ° Fixer ---> iob fix

                                    1 Reply Last reply
                                    0
                                    • mickymM Online
                                      mickymM Online
                                      mickym
                                      Most Active
                                      wrote on last edited by mickym
                                      #63

                                      Na ist trotzdem ein Bug drin in der Alias funktion. Wenn ich den Alias auf Read-Only setze dann darf der nix in den originalen Datenpunkt schreiben.

                                      Ansonsten muss man das ganze Objekt in die Schreibfunktion eingeben. Das funktioniert zwar - ist aber unübersichtlich:

                                      bf4688f9-138e-40df-8d99-bc7c560c6a44-image.png

                                      {
                                        "common": {
                                          "name": "jsonState",
                                          "desc": "Manuell erzeugt",
                                          "role": "state",
                                          "type": "string",
                                          "read": true,
                                          "write": true,
                                          "def": "",
                                          "alias": {
                                            "id": "0_userdata.0.Test.jsonState",
                                            "read": "JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price",
                                            "write": "JSON.stringify({   \"ÖSTERREICH\": {     \"services\": {       \"Super Plus\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,642 EUR\"         }       ],       \"Super\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,498 EUR\"         }       ],       \"Normal\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,498 EUR\"         }       ],       \"Diesel\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": val         }       ],       \"Premium Diesel\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,919 EUR\"         }       ],       \"IQ Motoröle und Chemie\": \"10 % Rabatt\",       \"Autowäsche\": \"10 % Rabatt\"     },     \"info\": \"\",     \"countryname\": \"ÖSTERREICH\"   },   \"BOSNIEN UND HERZEGOWINA\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"BOSNIEN UND HERZEGOWINA\"   },   \"BELGIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"BELGIEN\"   },   \"BULGARIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"BULGARIEN\"   },   \"DEUTSCHLAND\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"DEUTSCHLAND\"   },   \"DÄNEMARK\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"DÄNEMARK\"   },   \"SPANIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"SPANIEN\"   },   \"FRANKREICH\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"FRANKREICH\"   },   \"GROßBRITANNIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"GROßBRITANNIEN\"   },   \"UNGARN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"UNGARN\"   },   \"ITALIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"ITALIEN\"   },   \"LITAUEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"LITAUEN\"   },   \"LUXEMBURG\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"LUXEMBURG\"   },   \"NIEDERLANDE\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"NIEDERLANDE\"   },   \"NORWEGEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"NORWEGEN\"   },   \"POLEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"POLEN\"   },   \"RUMÄNIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"RUMÄNIEN\"   },   \"SLOWENIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"SLOWENIEN\"   } })"
                                          }
                                        },
                                        "type": "state",
                                        "native": {},
                                        "_id": "alias.0.test.jsonState",
                                        "acl": {
                                          "object": 1636,
                                          "state": 1636,
                                          "owner": "system.user.admin",
                                          "ownerGroup": "system.group.administrator"
                                        },
                                        "from": "system.adapter.admin.0",
                                        "user": "system.user.admin",
                                        "ts": 1670697253009
                                      }
                                      

                                      Du siehst man muss das gesamte Objekt mitgeben. Ist ziemlich unübersichtlich.

                                      Ich würde mal ein Issue erstellen - es DARF nicht SEIN, dass ein Alias den ich auf ReadOnly setze, dann was in den Datenpunkt geschrieben wird und damit den JSON zerstört - was natürlich passiert, wenn ich nicht den ganzen JSON neu schreibe.

                                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                      NegaleinN 1 Reply Last reply
                                      0
                                      • mickymM mickym

                                        Na ist trotzdem ein Bug drin in der Alias funktion. Wenn ich den Alias auf Read-Only setze dann darf der nix in den originalen Datenpunkt schreiben.

                                        Ansonsten muss man das ganze Objekt in die Schreibfunktion eingeben. Das funktioniert zwar - ist aber unübersichtlich:

                                        bf4688f9-138e-40df-8d99-bc7c560c6a44-image.png

                                        {
                                          "common": {
                                            "name": "jsonState",
                                            "desc": "Manuell erzeugt",
                                            "role": "state",
                                            "type": "string",
                                            "read": true,
                                            "write": true,
                                            "def": "",
                                            "alias": {
                                              "id": "0_userdata.0.Test.jsonState",
                                              "read": "JSON.parse(val)['ÖSTERREICH'].services.Diesel[0].price",
                                              "write": "JSON.stringify({   \"ÖSTERREICH\": {     \"services\": {       \"Super Plus\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,642 EUR\"         }       ],       \"Super\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,498 EUR\"         }       ],       \"Normal\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,498 EUR\"         }       ],       \"Diesel\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": val         }       ],       \"Premium Diesel\": [         {           \"date\": \"05.12.2022-11.12.2022:\",           \"price\": \"1,919 EUR\"         }       ],       \"IQ Motoröle und Chemie\": \"10 % Rabatt\",       \"Autowäsche\": \"10 % Rabatt\"     },     \"info\": \"\",     \"countryname\": \"ÖSTERREICH\"   },   \"BOSNIEN UND HERZEGOWINA\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"BOSNIEN UND HERZEGOWINA\"   },   \"BELGIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"BELGIEN\"   },   \"BULGARIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"BULGARIEN\"   },   \"DEUTSCHLAND\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"DEUTSCHLAND\"   },   \"DÄNEMARK\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"DÄNEMARK\"   },   \"SPANIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"SPANIEN\"   },   \"FRANKREICH\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"FRANKREICH\"   },   \"GROßBRITANNIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"GROßBRITANNIEN\"   },   \"UNGARN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"UNGARN\"   },   \"ITALIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"ITALIEN\"   },   \"LITAUEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"LITAUEN\"   },   \"LUXEMBURG\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"LUXEMBURG\"   },   \"NIEDERLANDE\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"NIEDERLANDE\"   },   \"NORWEGEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"NORWEGEN\"   },   \"POLEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"POLEN\"   },   \"RUMÄNIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"RUMÄNIEN\"   },   \"SLOWENIEN\": {     \"services\": {},     \"info\": \"Sie tanken zum aktuellen Pumpenabgabepreis\",     \"countryname\": \"SLOWENIEN\"   } })"
                                            }
                                          },
                                          "type": "state",
                                          "native": {},
                                          "_id": "alias.0.test.jsonState",
                                          "acl": {
                                            "object": 1636,
                                            "state": 1636,
                                            "owner": "system.user.admin",
                                            "ownerGroup": "system.group.administrator"
                                          },
                                          "from": "system.adapter.admin.0",
                                          "user": "system.user.admin",
                                          "ts": 1670697253009
                                        }
                                        

                                        Du siehst man muss das gesamte Objekt mitgeben. Ist ziemlich unübersichtlich.

                                        Ich würde mal ein Issue erstellen - es DARF nicht SEIN, dass ein Alias den ich auf ReadOnly setze, dann was in den Datenpunkt geschrieben wird und damit den JSON zerstört - was natürlich passiert, wenn ich nicht den ganzen JSON neu schreibe.

                                        NegaleinN Offline
                                        NegaleinN Offline
                                        Negalein
                                        Global Moderator
                                        wrote on last edited by
                                        #64

                                        @mickym

                                        kurze Frage:

                                        das JSON schaut jetzt so aus

                                        {
                                        	"ÖSTERREICH": {
                                        		"services": {
                                        			"Diesel Preise": [
                                        				{
                                        					"date": "15.12.2025 - 21.12.2025 :",
                                        					"price": "1,516 EUR"
                                        				},
                                        				{
                                        					"date": "08.12.2025 - 14.12.2025 :",
                                        					"price": "1,516 EUR"
                                        				},
                                        				{
                                        					"date": "01.12.2025 - 07.12.2025 :",
                                        					"price": "1,528 EUR"
                                        				},
                                        				{
                                        					"date": "24.11.2025 - 30.11.2025 :",
                                        					"price": "1,576 EUR"
                                        				},
                                        				{
                                        					"date": "17.11.2025 - 23.11.2025 :",
                                        					"price": "1,559 EUR"
                                        				}
                                        			],
                                        
                                        	},
                                        

                                        muss ich jetzt es so eintragen?
                                        JSON.parse(val)['ÖSTERREICH'].services.Diesel Preise[0].price

                                        ° Node.js & System Update ---> sudo apt update, iob stop, sudo apt full-upgrade
                                        ° Node.js Fixer ---> iob nodejs-update
                                        ° Fixer ---> iob fix

                                        paul53P 1 Reply Last reply
                                        0
                                        • NegaleinN Negalein

                                          @mickym

                                          kurze Frage:

                                          das JSON schaut jetzt so aus

                                          {
                                          	"ÖSTERREICH": {
                                          		"services": {
                                          			"Diesel Preise": [
                                          				{
                                          					"date": "15.12.2025 - 21.12.2025 :",
                                          					"price": "1,516 EUR"
                                          				},
                                          				{
                                          					"date": "08.12.2025 - 14.12.2025 :",
                                          					"price": "1,516 EUR"
                                          				},
                                          				{
                                          					"date": "01.12.2025 - 07.12.2025 :",
                                          					"price": "1,528 EUR"
                                          				},
                                          				{
                                          					"date": "24.11.2025 - 30.11.2025 :",
                                          					"price": "1,576 EUR"
                                          				},
                                          				{
                                          					"date": "17.11.2025 - 23.11.2025 :",
                                          					"price": "1,559 EUR"
                                          				}
                                          			],
                                          
                                          	},
                                          

                                          muss ich jetzt es so eintragen?
                                          JSON.parse(val)['ÖSTERREICH'].services.Diesel Preise[0].price

                                          paul53P Offline
                                          paul53P Offline
                                          paul53
                                          wrote on last edited by
                                          #65

                                          @Negalein sagte: so eintragen?
                                          Nein, so:

                                          JSON.parse(val)['ÖSTERREICH'].services['Diesel Preise'][0].price
                                          

                                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                          NegaleinN 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          636

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe