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. Visualisierung
  4. [gelöst]String formatieren

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    10
    1
    138

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.4k

[gelöst]String formatieren

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vis
17 Beiträge 3 Kommentatoren 1.7k Aufrufe 4 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.
  • HomoranH Nicht stören
    HomoranH Nicht stören
    Homoran
    Global Moderator Administrators
    schrieb am zuletzt editiert von
    #6

    Hab ein wenig gespielt, jetzt sind die Felder auch voll:

    nicht ganz ernst gemeint (auch wenn ich es in anderem Zusammenhang so mache)
    text_untereinander.png

    Einfach das Feld so breit machen, dass ein Zeilenumbruch kommt.

    Sauber macht man es, dass man das ", " gegen ein <br> oder </n> (neue Zeile) austauscht.
    Entweder per Skript, oder vielleicht als Binding.

    Das kann ja mal jemand machen, der sich damit auskennt ;-)

    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

    Dominik F.D 1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      Hab ein wenig gespielt, jetzt sind die Felder auch voll:

      nicht ganz ernst gemeint (auch wenn ich es in anderem Zusammenhang so mache)
      text_untereinander.png

      Einfach das Feld so breit machen, dass ein Zeilenumbruch kommt.

      Sauber macht man es, dass man das ", " gegen ein <br> oder </n> (neue Zeile) austauscht.
      Entweder per Skript, oder vielleicht als Binding.

      Das kann ja mal jemand machen, der sich damit auskennt ;-)

      Dominik F.D Offline
      Dominik F.D Offline
      Dominik F.
      schrieb am zuletzt editiert von
      #7

      @Homoran

      Jam die Idee ist mir auch schon gekommen, jedoch wird es irgendwann ein Durcheinander geben wenn mal ein Adapter der länger ist auftaucht.
      Die Frage ist nur, wie tauscht man das "," gegen <br> aus :/

      HomoranH 1 Antwort Letzte Antwort
      0
      • Dominik F.D Dominik F.

        @Homoran

        Jam die Idee ist mir auch schon gekommen, jedoch wird es irgendwann ein Durcheinander geben wenn mal ein Adapter der länger ist auftaucht.
        Die Frage ist nur, wie tauscht man das "," gegen <br> aus :/

        HomoranH Nicht stören
        HomoranH Nicht stören
        Homoran
        Global Moderator Administrators
        schrieb am zuletzt editiert von
        #8

        @Dominik-F

        Bin gerade an zwei DIngen dran.
        Habe noch keine Ahnung was ich da mache. Aber so kann man lernen.

        Das eine ist eine json Tabelle.
        Es gibt da auch einen Datenpunkt mit einem json.
        Irgendwie klappt das mit dem json-Table-Widget aber nicht:

        updates_json.png

        Das zweite ist, dass ich versuche über ein Blockly die Liste in ein Json zu wandeln.
        War eigentlich der erste Ansatz bis ich den json Datenpunkt gesehen habe.

        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

        Dominik F.D 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @Dominik-F

          Bin gerade an zwei DIngen dran.
          Habe noch keine Ahnung was ich da mache. Aber so kann man lernen.

          Das eine ist eine json Tabelle.
          Es gibt da auch einen Datenpunkt mit einem json.
          Irgendwie klappt das mit dem json-Table-Widget aber nicht:

          updates_json.png

          Das zweite ist, dass ich versuche über ein Blockly die Liste in ein Json zu wandeln.
          War eigentlich der erste Ansatz bis ich den json Datenpunkt gesehen habe.

          Dominik F.D Offline
          Dominik F.D Offline
          Dominik F.
          schrieb am zuletzt editiert von
          #9

          @Homoran

          könnte man sich in der json tabelle nicht nur den ersten wert anzeigen lassen und mit zeilenumbruch den zweiten?

          J.A.R.V.I.S.J HomoranH 2 Antworten Letzte Antwort
          0
          • Dominik F.D Dominik F.

            @Homoran

            könnte man sich in der json tabelle nicht nur den ersten wert anzeigen lassen und mit zeilenumbruch den zweiten?

            J.A.R.V.I.S.J Offline
            J.A.R.V.I.S.J Offline
            J.A.R.V.I.S.
            Developer
            schrieb am zuletzt editiert von J.A.R.V.I.S.
            #10

            @Dominik-F @Homoran

            hier ein kleines Skript, was auch bei dem JSON Widget helfen kann.

            let json = JSON.parse(getState('admin.0.info.updatesJson').val);
            let updates = [];
            let result;
            
            for(let adapter in json) {
            
                let tmp = {};
            
                tmp.adapter = adapter;
                tmp.installed = json[adapter].installedVersion;
                tmp.available = json[adapter].availableVersion;
            
                updates.push(tmp);
            }
            
            result = JSON.stringify(updates);
            
            console.log(result); //bzw. das Ergebnis in eine Variable schreiben und von der VIS anzeigen lassen (JSON Widget)
            
            Dominik F.D 1 Antwort Letzte Antwort
            1
            • Dominik F.D Dominik F.

              @Homoran

              könnte man sich in der json tabelle nicht nur den ersten wert anzeigen lassen und mit zeilenumbruch den zweiten?

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #11

              @Dominik-F

              Ich denke mal der UpdateJson Datenpunkt sollte mit dem Widget jsoTable so aussehen:

              update_json_richtig.png

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              0
              • J.A.R.V.I.S.J J.A.R.V.I.S.

                @Dominik-F @Homoran

                hier ein kleines Skript, was auch bei dem JSON Widget helfen kann.

                let json = JSON.parse(getState('admin.0.info.updatesJson').val);
                let updates = [];
                let result;
                
                for(let adapter in json) {
                
                    let tmp = {};
                
                    tmp.adapter = adapter;
                    tmp.installed = json[adapter].installedVersion;
                    tmp.available = json[adapter].availableVersion;
                
                    updates.push(tmp);
                }
                
                result = JSON.stringify(updates);
                
                console.log(result); //bzw. das Ergebnis in eine Variable schreiben und von der VIS anzeigen lassen (JSON Widget)
                
                Dominik F.D Offline
                Dominik F.D Offline
                Dominik F.
                schrieb am zuletzt editiert von
                #12

                @J-A-R-V-I-S

                dank dir, ich werde das später mal ausprobieren und dann eine rückmeldung geben

                @Homoran

                Die Werte dort sind bei static angegeben, hast du mal getestet wie sich die Tabelle verhält wenn ein wert weg ist? müsste das nicht bei table oder so rein?

                HomoranH 1 Antwort Letzte Antwort
                0
                • Dominik F.D Dominik F.

                  @J-A-R-V-I-S

                  dank dir, ich werde das später mal ausprobieren und dann eine rückmeldung geben

                  @Homoran

                  Die Werte dort sind bei static angegeben, hast du mal getestet wie sich die Tabelle verhält wenn ein wert weg ist? müsste das nicht bei table oder so rein?

                  HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von Homoran
                  #13

                  @Dominik-F sagte in String formatieren:

                  müsste das nicht bei table oder so rein?

                  nein, der Adapter müsste diese Struktur liefern. Aber das macht er nicht, warum auch immer.
                  Mit dem, was der Adapter im Datenpunkt "updateJson" liefert klappt es eben leider nicht.

                  Ich habe nicht die größte Ahnung, aber nachdem ich da jetzt ein paar Stunden dran sitze, würde ich sogar behaupten, dass was da im Datenpunkt steht ist kein valides json

                  Es war nur als Beispiel gedacht "wie es hätte aussehen können"

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  Dominik F.D 1 Antwort Letzte Antwort
                  0
                  • HomoranH Homoran

                    @Dominik-F sagte in String formatieren:

                    müsste das nicht bei table oder so rein?

                    nein, der Adapter müsste diese Struktur liefern. Aber das macht er nicht, warum auch immer.
                    Mit dem, was der Adapter im Datenpunkt "updateJson" liefert klappt es eben leider nicht.

                    Ich habe nicht die größte Ahnung, aber nachdem ich da jetzt ein paar Stunden dran sitze, würde ich sogar behaupten, dass was da im Datenpunkt steht ist kein valides json

                    Es war nur als Beispiel gedacht "wie es hätte aussehen können"

                    Dominik F.D Offline
                    Dominik F.D Offline
                    Dominik F.
                    schrieb am zuletzt editiert von
                    #14

                    @Homoran
                    @J-A-R-V-I-S

                    ich glaube ich habs jetzt :) Das Skript war der Schlüssel.
                    Die Liste sieht nun so aus :

                    Unbenannt.PNG

                    Links einmal die komplette Tabelle, rechts nur die Adapter. Das einzige was ich jetzt noch hinbekommen muss ist, die Spalten etwas besser auszurichten, da weiß ich allerdings noch nicht so genau wie.

                    Das Skript habe ich um folgendes erweitert:

                    // Skriptstart  
                    
                    setState('javascript.0.VIS.ioBroker_Updates'/*ioBroker Updates*/, result);
                     
                    
                    // Aktualisierung bei Wertänderung
                    on(result, function(dp) {
                       setState('javascript.0.VIS.ioBroker_Updates'/*ioBroker Updates*/, dp.state.val);
                    });
                    

                    Allerdings funktioniert die Aktualisierung der Werteänderung nicht. Habt ihr da noch einen Tipp für mich? Mein Versuch gibt zwar keine Fehlermeldung raus, funktionieren tuts jedoch auch nicht^^

                    1 Antwort Letzte Antwort
                    0
                    • Dominik F.D Offline
                      Dominik F.D Offline
                      Dominik F.
                      schrieb am zuletzt editiert von
                      #15

                      Habe den Teil jetzt noch einmal verändert und es scheint zu funktionieren, auf jedenfall ist der Datenpunkt jetzt leer nachdem ich das letzte update installiert habe.

                      hier der neue Teil, ist der so korrekt?

                      // Aktualisierung bei Wertänderung
                      on({id: 'admin.0.info.updatesJson', change: 'ne'}, function(dp) {
                         setState('javascript.0.VIS.ioBroker_Updates'/*ioBroker Updates*/, dp.state.val);
                      });
                      
                      1 Antwort Letzte Antwort
                      0
                      • Dominik F.D Offline
                        Dominik F.D Offline
                        Dominik F.
                        schrieb am zuletzt editiert von
                        #16

                        Da das Grundproblem gelöst wurde, schließe ich dieses Thema nun. Danke euch

                        1 Antwort Letzte Antwort
                        0
                        • Dominik F.D Offline
                          Dominik F.D Offline
                          Dominik F.
                          schrieb am zuletzt editiert von
                          #17

                          @Homoran
                          hier nun das fertige Skript mit hilfe von Paul33 falls es von Interesse ist:

                          
                          const idUpdates = 'admin.0.info.updatesJson';
                          const idVis = 'javascript.0.VIS.ioBroker_Updates'/*ioBroker Updates*/;
                           
                          function modify(json) {
                             let obj = JSON.parse(json);
                             let updates = [];
                             for(let adapter in obj) {
                                let tmp = {};
                                tmp.adapter = adapter;
                                tmp.installed = obj[adapter].installedVersion;
                                tmp.available = obj[adapter].availableVersion;
                                updates.push(tmp);
                             }
                             setState(idVis, JSON.stringify(updates), true);
                          }
                           
                          // Skriptstart 
                          modify(getState(idUpdates).val);
                           
                          //Aktualisierung bei Wertänderung
                          on({id: idUpdates, change: 'ne'}, function(dp) {
                             modify(dp.state.val);
                          });
                          
                          
                          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

                          860

                          Online

                          32.5k

                          Benutzer

                          81.7k

                          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