Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. json teilen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.3k

json teilen

Geplant Angeheftet Gesperrt Verschoben JavaScript
37 Beiträge 6 Kommentatoren 3.2k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • W wolfgangkt

    @paul53 in dem Datenpunkt steht eigentlich immer das gleiche.
    liegt es vielleicht an dem Datenpunkt selbst ?

    {
      "type": "state",
      "common": {
        "name": {
          "en": "List of all devices",
          "de": "Liste aller Geräte",
          "ru": "Список всех устройств",
          "pt": "Lista de todos os dispositivos",
          "nl": "List van alle apparaten",
          "fr": "Liste de tous les dispositifs",
          "it": "Elenco di tutti i dispositivi",
          "es": "Lista de todos los dispositivos",
          "pl": "Lista wszystkich urządzeń",
          "zh-cn": "所有装置清单"
        },
        "type": "array",
        "role": "json",
        "read": true,
        "write": false
      },
      "native": {},
      "from": "system.adapter.device-watcher.0",
      "user": "system.user.admin",
      "ts": 1676195799090,
      "_id": "device-watcher.0.zigbee.listAll",
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      }
    }
    
    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #27

    @wolfgangkt
    Der Datenpunkt ist vom Typ "array", kann also nicht geparst werden. Ändere Zeile 6 in

        let arr = dp.state.val;
    

    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

    W 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @wolfgangkt
      Der Datenpunkt ist vom Typ "array", kann also nicht geparst werden. Ändere Zeile 6 in

          let arr = dp.state.val;
      
      W Offline
      W Offline
      wolfgangkt
      schrieb am zuletzt editiert von
      #28

      @paul53 jetzt funktioniert es. Vielen Dank für die Hilfe :+1: :+1: :+1:

      1 Antwort Letzte Antwort
      0
      • W Offline
        W Offline
        wolfgangkt
        schrieb am zuletzt editiert von
        #29

        @paul53 zu früh gefreut. In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.

        paul53P 1 Antwort Letzte Antwort
        0
        • W wolfgangkt

          @paul53 zu früh gefreut. In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #30

          @wolfgangkt sagte: In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.

          Ändere Zeile 8:

              for(let i = 30; i < arr.length; i++) {
          

          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

          W 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @wolfgangkt sagte: In den 2. Datenpunkt werden nur 3 Datensätze geschrieben.

            Ändere Zeile 8:

                for(let i = 30; i < arr.length; i++) {
            
            W Offline
            W Offline
            wolfgangkt
            schrieb am zuletzt editiert von
            #31

            @paul53 jetzt funktionierts. Besten Dank Dank nochmal.

            haus-automatisierungH 1 Antwort Letzte Antwort
            0
            • W wolfgangkt

              @paul53 jetzt funktionierts. Besten Dank Dank nochmal.

              haus-automatisierungH Online
              haus-automatisierungH Online
              haus-automatisierung
              Developer Most Active
              schrieb am zuletzt editiert von
              #32

              @wolfgangkt Hier noch eine etwas kürzere Alternative:

              const idJson = '0_userdata.0.testjson'; // Original
              const idJson1 = '0_userdata.0.json1'; // Teil 1
              const idJson2 = '0_userdata.0.json2'; // Teil 2
                
              on({ id: idJson, change: 'ne' }, (obj) => {
                  const arr = JSON.parse(obj.state.val);
              
                  setState(idJson1, JSON.stringify(arr.slice(0, 30)), true);
                  setState(idJson2, JSON.stringify(arr.slice(30)), true);
               });
              

              🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
              🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
              📚 Meine inoffizielle ioBroker Dokumentation

              W 1 Antwort Letzte Antwort
              0
              • haus-automatisierungH haus-automatisierung

                @wolfgangkt Hier noch eine etwas kürzere Alternative:

                const idJson = '0_userdata.0.testjson'; // Original
                const idJson1 = '0_userdata.0.json1'; // Teil 1
                const idJson2 = '0_userdata.0.json2'; // Teil 2
                  
                on({ id: idJson, change: 'ne' }, (obj) => {
                    const arr = JSON.parse(obj.state.val);
                
                    setState(idJson1, JSON.stringify(arr.slice(0, 30)), true);
                    setState(idJson2, JSON.stringify(arr.slice(30)), true);
                 });
                
                W Offline
                W Offline
                wolfgangkt
                schrieb am zuletzt editiert von
                #33

                @haus-automatisierung Danke, kann ich auch nochmal probieren. Das Script von @paul53 funktioniert einwandfrei. Die 2 Tabellen in der VIS laufen schon zu meiner Zufriedenheit.

                paul53P 1 Antwort Letzte Antwort
                0
                • W wolfgangkt

                  @haus-automatisierung Danke, kann ich auch nochmal probieren. Das Script von @paul53 funktioniert einwandfrei. Die 2 Tabellen in der VIS laufen schon zu meiner Zufriedenheit.

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #34

                  @wolfgangkt sagte: kann ich auch nochmal probieren.

                  Dann lass das Parsen in Zeile 6 weg (Datenpunkt liefert bereits ein Array).

                  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

                  W 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @wolfgangkt sagte: kann ich auch nochmal probieren.

                    Dann lass das Parsen in Zeile 6 weg (Datenpunkt liefert bereits ein Array).

                    W Offline
                    W Offline
                    wolfgangkt
                    schrieb am zuletzt editiert von
                    #35

                    @paul53 eine Frage hätte ich noch. Wie kann ich aus Original json bestimme Werte herausfiltern z.B alle Wassermelder und in einen eigenen Datenpunkt schreiben.

                    haus-automatisierungH 1 Antwort Letzte Antwort
                    0
                    • W wolfgangkt

                      @paul53 eine Frage hätte ich noch. Wie kann ich aus Original json bestimme Werte herausfiltern z.B alle Wassermelder und in einen eigenen Datenpunkt schreiben.

                      haus-automatisierungH Online
                      haus-automatisierungH Online
                      haus-automatisierung
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #36

                      @wolfgangkt z.B. mit Filter-Funktionen

                      arr.filter(v => v.Device.startsWith('Wassermelder'));
                      

                      Also

                      setState(idJson1, JSON.stringify(arr.filter(v => v.Device.startsWith('Wassermelder'))), true);
                      

                      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                      📚 Meine inoffizielle ioBroker Dokumentation

                      W 1 Antwort Letzte Antwort
                      0
                      • haus-automatisierungH haus-automatisierung

                        @wolfgangkt z.B. mit Filter-Funktionen

                        arr.filter(v => v.Device.startsWith('Wassermelder'));
                        

                        Also

                        setState(idJson1, JSON.stringify(arr.filter(v => v.Device.startsWith('Wassermelder'))), true);
                        
                        W Offline
                        W Offline
                        wolfgangkt
                        schrieb am zuletzt editiert von
                        #37

                        @haus-automatisierung Super :+1: Vielen Dank. Klappt einwandfrei.

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        690

                        Online

                        32.6k

                        Benutzer

                        82.3k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe