Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst]Datenpunkt aus Json in CCU2 Variable 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]Datenpunkt aus Json in CCU2 Variable schreiben?

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

      Ich habe eine Tabelle und möchte das Erste Datum und Uhrzeit in eine CCU2 Variable schreiben.
      Ich hab zwar schon mit Blocky gearbeitet aber hier bleibe ich hängen.
      Der Inhalt der Tabelle (liegt als Objekt vor) schaut dabei so aus:

      [{"Datum":"7.1","Start":"16:17","Saugzeit":"11 min","Fläche":"12.37 m²","Error":0,"Ende":true},{"Datum":"7.1","Start":"16:14","Saugzeit":"0 min","Fläche":"0 m²","Error":0,"Ende":false},{"Datum":"7.1","Start":"15:49","Saugzeit":"12 min","Fläche":"7.63 m²","Error":0,"Ende":true},{"Datum":"6.1","Start":"07:00","Saugzeit":"8 min","Fläche":"14.64 m²","Error":0,"Ende":false},{"Datum":"4.1","Start":"07:00","Saugzeit":"44 min","Fläche":"46.37 m²","Error":0,"Ende":true},{"Datum":"1.1","Start":"07:00","Saugzeit":"46 min","Fläche":"51.15 m²","Error":0,"Ende":true},{"Datum":"30.12","Start":"12:14","Saugzeit":"57 min","Fläche":"54.34 m²","Error":0,"Ende":true},{"Datum":"28.12","Start":"11:21","Saugzeit":"52 min","Fläche":"55.09 m²","Error":0,"Ende":true},{"Datum":"28.12","Start":"11:04","Saugzeit":"16 min","Fläche":"3.99 m²","Error":0,"Ende":false},{"Datum":"26.12","Start":"07:00","Saugzeit":"9 min","Fläche":"13.21 m²","Error":8,"Ende":false},{"Datum":"24.12","Start":"07:00","Saugzeit":"25 min","Fläche":"27.49 m²","Error":0,"Ende":true},{"Datum":"23.12","Start":"16:58","Saugzeit":"38 min","Fläche":"35.17 m²","Error":0,"Ende":true},{"Datum":"23.12","Start":"11:24","Saugzeit":"54 min","Fläche":"57.24 m²","Error":0,"Ende":true},{"Datum":"21.12","Start":"07:00","Saugzeit":"49 min","Fläche":"53.05 m²","Error":0,"Ende":true},{"Datum":"19.12","Start":"07:00","Saugzeit":"44 min","Fläche":"46.46 m²","Error":0,"Ende":true},{"Datum":"17.12","Start":"07:00","Saugzeit":"59 min","Fläche":"52.08 m²","Error":0,"Ende":true},{"Datum":"14.12","Start":"07:00","Saugzeit":"45 min","Fläche":"49.58 m²","Error":0,"Ende":true},{"Datum":"12.12","Start":"11:58","Saugzeit":"43 min","Fläche":"25.72 m²","Error":0,"Ende":true},{"Datum":"12.12","Start":"11:53","Saugzeit":"3 min","Fläche":"1.91 m²","Error":0,"Ende":true},{"Datum":"12.12","Start":"11:29","Saugzeit":"24 min","Fläche":"13.2 m²","Error":0,"Ende":false}]
      

      Vielen Dank für die Unterstützung.

      paul53 2 Replies Last reply Reply Quote 0
      • paul53
        paul53 @chemieka last edited by paul53

        @chemieka sagte:

        das Erste Datum und Uhrzeit in eine CCU2 Variable schreiben.

        let obj = JSON.parse(json)[0];
        setState(idSV, obj.Datum + '. ' + obj.Start);
        
        C 1 Reply Last reply Reply Quote 0
        • C
          chemieka @paul53 last edited by

          @paul53

          Das schaut so einfach aus aber wo muss ich rein schreiben aus welchen Adapter und Objekt er die Daten nehmen soll und wo sie wieder hin sollen?
          Wie gesagt ich bekomme maximal Blocky etwas selber hin. Bei einem richtigen Script müsstest du weiter ausholen bitte.

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

            @chemieka sagte:

            Der Inhalt der Tabelle (liegt als Objekt vor)

            Du hast nicht geschrieben: Wo. In einem Datenpunkt ?

            1 Reply Last reply Reply Quote 0
            • C
              chemieka last edited by

              die Tabelle liegt im Adapter mihome-vacuum.0.history.allTableJSON
              und soll in eine Variable hm-rega.0.7466

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

                @chemieka
                Neues Script erstellen (Javascript-Instanz):

                const idJson = 'mihome-vacuum.0.history.allTableJSON';
                const idSV   = 'hm-rega.0.7466';
                
                function json2sv(json) {
                   let obj = JSON.parse(json)[0];
                   setState(idSV, obj.Datum + '. ' + obj.Start);
                }
                
                json2sv(getState(idJson).val); // Script start
                
                on(idJson, function(dp) { // Wertänderung
                   json2sv(dp.state.val);
                });
                
                C 1 Reply Last reply Reply Quote 0
                • C
                  chemieka @paul53 last edited by

                  @paul53 sagte in Datenpunkt aus Json Tabelle in CCU2 Variable schreiben?:

                  const idJson = 'mihome-vacuum.0.history.allTableJSON'; const idSV = 'hm-rega.0.7466'; function json2sv(json) { let obj = JSON.parse(json)[0]; setState(idSV, obj.Datum + '. ' + obj.Start); } json2sv(getState(idJson).val); // Script start on(idJson, function(dp) { // Wertänderung json2sv(dp.state.val); });

                  OK das habe ich. Wie könnte ich es starten lassen? Tägliche Timer?

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

                    @chemieka sagte:

                    Wie könnte ich es starten lassen? Tägliche Timer?

                    Nein, das Script aktivieren und schon geht es los: Einmal bei Start und dann wird bei jeder Änderung des JSON-Inhalts getriggert.

                    1 Reply Last reply Reply Quote 0
                    • C
                      chemieka last edited by

                      Das ist ja Klasse die Daten sind in der Variable.
                      Also ehrlich mir ist das ein Rätzel, ihr seit Künstler.
                      Vielen Dank.😁

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      758
                      Online

                      31.8k
                      Users

                      80.0k
                      Topics

                      1.3m
                      Posts

                      2
                      9
                      609
                      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