Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. HTML Tabelle Linux-Control Adapter

    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

    HTML Tabelle Linux-Control Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • Scrounger
      Scrounger Developer @liv-in-sky last edited by

      @liv-in-sky sagte in HTML Tabelle Linux-Control Adapter:

      @Scrounger

      ich versuche mich noch mit dem list widget und bräuchte mal etwas hilfe:

      im bild sind die beiden gelben pfeile 2 tabellen - wie kann ich es schaffen, dass die nebeneinander sind - es kommen auch noch die button-befehle dazu - dann wird das alles zu lang

      Image 4.png

      hoffentlich ist der code nicht zu wirr

      let mysubText = "</br>"+`
      
                       <div style="color: ${farbeUeber}; font-family: RobotoCondensed-LightItalic; font-size: 20px;">HD:  ${vax1[iii][1]}%, ${vax1[iii][6]}</div> `
      
                        mysubText=mysubText.concat(`<div style="color: ${farbeUeber}; font-family: RobotoCondensed-LightItalic; font-size: 18px;">Folder:</div>
                                                   `)
                      mysubText=mysubText.concat(`<span display: flex; flex-direction: row;> <table align="center" >`)
      for (var i=0;i<vax2.length;i++){
                     if (vax2[i][0]==vax1[iii][0]) {
                       mysubText=mysubText.concat(`<tr><td align=\"left\">${vax2[i][1]}</td><td align=\"left\">&ensp;${vax2[i][2]} ${vax2[i][4]}</td></tr>` ) // `<div>${vax2[i][1]}: ${vax2[i][2]} ${vax2[i][4]}  </div>`
                        }  }
                        mysubText=mysubText.concat(`</table></span>`) 
      
                        
                        mysubText=mysubText.concat(`<div style="color: ${farbeUeber}; font-family: RobotoCondensed-LightItalic; font-size: 18px;">Service:</div>
                                                   `)
                        mysubText=mysubText.concat(`<span display: flex; flex-direction: row;> <table align="center" >`)
      for (var i=0;i<vax3.length;i++){
                     if (vax3[i][0]==vax1[iii][0]) {
                        let helpextra; vax3[i][2] ? helpextra=serviceTrue :helpextra=serviceFalse  
                       mysubText=mysubText.concat( `<tr><td align=\"left\">&ensp;${vax3[i][1]}</td><td align=\"left\">${helpextra}</td></tr>`)
                        }  }   
                        mysubText=mysubText.concat("</table></span>"  )   
        
      

      Da musst du dich echt gedulden, wir die nächsten Tage sicher nix.
      Meine Idee wäre zb beide Tabellen in nen flex Container mit column zu packen oder in eine Tabelle mit zwei Spalten. Vlt hilft dir das schon weiter?

      liv-in-sky 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @liv-in-sky last edited by

        @liv-in-sky sagte in HTML Tabelle Linux-Control Adapter:

        @Homoran

        was passiert, wenn du

        du -c /opt/iobroker | tail -1 | awk '{printf $1MB}'
        

        in die console eingibst - auf dem tinker

        nicht editieren, nachdem ich es kopiert habe 😉

        pi@tinkerboard:~$ du -c /opt/iobroker | tail -1 | awk '{printf $1MB}'
        139796pi@tinkerboard:~$
        
        liv-in-sky 1 Reply Last reply Reply Quote 0
        • liv-in-sky
          liv-in-sky @Homoran last edited by

          @Homoran also der befehl funktioniert, der wird vom adapter verwendet

          dann muss es doch ein rechte problem sein

          ob das ssh setting reinspielen könnten, weiß ich nicht

          Homoran 1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @Scrounger last edited by

            @Scrounger danke - paßt schon - ich versuche es einfach weiter

            so schlecht sieht es nicht aus 🙂

            Image 19.png

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @liv-in-sky last edited by Homoran

              @liv-in-sky sagte in HTML Tabelle Linux-Control Adapter:

              der befehl funktioniert, der wird vom adapter verwendet

              dann besteht bestenfalls noch die Möglichkeit, dass die Infos irgendwann mal kommen werden, weil die Abfrage zu lange dauert

              denn wie du siehst habe ich ihn als einfacher user abgefragt und somit sollte es kein Rechteproblem sein, außer der abfragende ist der user iobroker und müsste auch noch auf dem Tinker/der VM existieren.
              Dagegen spricht aber dass es bei RasPi4 klappt

              liv-in-sky 1 Reply Last reply Reply Quote 0
              • liv-in-sky
                liv-in-sky @Homoran last edited by

                @Homoran was hast du für ein interval eingestellt - ist in minuten

                Homoran 2 Replies Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators @liv-in-sky last edited by Homoran

                  @liv-in-sky sagte in HTML Tabelle Linux-Control Adapter:

                  @Homoran was hast du für ein interval eingestellt - ist in minuten

                  ich meine 5.
                  habe aber im log gesehen, dass vom start bis zum ende der drei Abfragen einiges an Zeit vergeht. Muss mal eben nachsehen:

                  inux-control.0	2020-08-14 20:49:57.614	info	(17880) successful received data from Tinker (192.168.138.74:22)
                  linux-control.0	2020-08-14 20:49:56.532	info	(17880) getting data from Tinker (192.168.138.74:22)
                  linux-control.0	2020-08-14 20:48:40.849	info	(17880) successful received data from RasPi4 (192.168.138.139:22)
                  linux-control.0	2020-08-14 20:48:29.669	info	(17880) successful received data from NUC_VM (192.168.138.123:22)
                  linux-control.0	2020-08-14 20:47:03.762	info	(17880) getting data from RasPi4 (192.168.138.139:22)
                  

                  da überlappt sich was!

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @liv-in-sky last edited by

                    @liv-in-sky sagte in HTML Tabelle Linux-Control Adapter:

                    was hast du für ein interval eingestellt - ist in minuten

                    Habe es jetzt auf 10 Minuten geädert, morgen früh mal sehen, was dabei rausgekommen ist.

                    "deinen" Befehl habe ich jetzt nochmal modifiziert ( `du -c /opt/iobroker/iobroker-data/history | tail -1 | awk '{printf $1MB}' ) und bei der NUC_VM zusätzlich unter meine Befehle eingegeben (der Tinker hat kein history)

                    Das funktioniert (sind nur keine MB 😉 )

                    Ordner.png

                    liv-in-sky 1 Reply Last reply Reply Quote 0
                    • liv-in-sky
                      liv-in-sky @Homoran last edited by liv-in-sky

                      @Homoran

                      ich muss sagen, mittlerweile tendiere ich bei diesem project mehr zu material design anzeige - besser zu erfassen als die tabelle - bisher habe ich eigentlich die tabellen bevorzugt

                      vorallem bei mehreren servern ( bei mir 8 stück) ist das MD viel übersichtlicher

                      überlege noch, ob ich eine kleinere version machen soll (z.b. ohne bilder)

                      Image 6.png

                      Homoran 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @liv-in-sky last edited by

                        @liv-in-sky sieht in diesem Zusammenhang wirklich besser aus. Alle Achtung vor der Arbeit von @Scrounger und dir.

                        Ich habe bisher noch nie mit MD gearbeitet, weil ich (ohne @Scrounger zu nahetreten zu wollen, weil ich seine Arbeit überhaupt nicht kenne) Bammel habe, dass mit den CSS-Änderungen anderes nicht mehr sauber funktioniert.

                        Hatte so etwas schon bei @ruhr70 s Widgetsätzen zu TV-Spielfilm und in anderen Fällen.
                        Im Forum steht dann bei eingen Problemen immer die Frage, ob der User evtl. mit MD-Widgets arbeitet.
                        (Ich weiß, ich lese zu viel 😉 )

                        muss mich da mal irgendwann auf einem Testsystem einarbeiten, weil ich dieses schlichte System von MD einfach toll finde.

                        liv-in-sky 1 Reply Last reply Reply Quote 0
                        • liv-in-sky
                          liv-in-sky @Homoran last edited by liv-in-sky

                          @Homoran also ich habe einfach seinen adapter installiert und alles hat weiterhin funktioniert - habe schon einiges an css im vis editor - beißt sich nicht

                          auch das diagramm (der flot ersatz) finde ich sehr schön

                          es gibt noch ein anderes material design project - dort muss man sehr viel in die vis-css eintragen - das hat bei mir nicht richtig funktioniert - css wieder raus gelöscht und alles war gut

                          1 Reply Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky last edited by

                            ich habe ein update im ersten post - die änderungen betreffen hauptsächlich das Material Design List Widget - dieses kann nun aufgeteilt werden, da einzelne server (z.b. proxmox) mehr daten anzeigen und so das widget enorm verrößern/verzerren
                            man kann auch die widget auf verschiedene views aufteilen für ganz wichtige server und eine zweite view mit den anderen servern
                            siehe post 2 am anfang des threads

                            beim update darauf achten

                            • es braucht einen neuen datenpunkt für das 2te md-widget
                            • es sind einige variablen dazu gekommen - daher kann das setting nicht einfach vom alten script übernommen werden

                            hier ein beispiel:

                            Image 5.png

                            1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky last edited by liv-in-sky

                              und nochwas

                              in der tabelle und im md widget gibt es nun einen neuen bereich: sonstiges

                              darin sind eigene befehle definiert, welche angezeigt werden sollen

                              dazu müssen diese befehle besonders angelegt werden (in diesem beispiel kann das ergebnis "running" oder "stopped" sein

                              Image 10.png

                              es muss ein "befehle." vor dem befehlnamen hinzugefügt werden - das legt einen eigenen unterordner an, der im script ausgelesen wird

                              Image 7.png

                              Image 9.png

                              dirk1962 2 Replies Last reply Reply Quote 0
                              • liv-in-sky
                                liv-in-sky last edited by

                                habe neues update im ersten post - beinhaltet threshold-werte für cpu-temp, root-verzeichnis und update-pakete - die threshold-werte können im setting definiert werden. in der html tabelle ist das blinken nicht integriert - nur eine farbliche darstellung.

                                Image 19.png

                                4er.gif

                                smart70.gif

                                um das blinken zu erreichen, muss im css tab in vis-editor eine klasse existieren, die "blinkklasse" heißt (ist aber nicht nötig, wenn die blinkerei stört) :
                                z.b.

                                .blinkklasse {
                                 
                                  animation: blink 1s linear infinite;
                                }
                                
                                @keyframes blink {
                                  0%, 50% {
                                    opacity: 0;
                                  }
                                  50.01%, 100% {
                                    opacity: 1;
                                  }
                                }
                                
                                1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky last edited by

                                  neu dazu gekommen:

                                  Speicher, Swap und Top-Process anzeige

                                  freiwillige eingabe - -wenn als datenpunkt vorhanden, wird es angezeigt - wenn nicht gewünscht einfach weglassen

                                  Image 1.png

                                  Image 2.png

                                  einzutragen unter BEFEHLE-tab:

                                  Image 3.png

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

                                    @liv-in-sky
                                    Läuft soweit ganz gut, aber:

                                    Mein Problemkind:
                                    linux_control_012.png
                                    zeigt keine Updates usw. an, obwohl die DPs in den Objekten korrekt gefüllt sind:
                                    TinkerUpdates.png

                                    Ich hätte fast schon dem armen @Scrounger die Schuld gegeben und Gottseidank noch schnell in die Objekte gesehen.

                                    Und ja, da steht es schon einige Zyklen

                                    Ich nehme an, dass durch die fehlenden Daten, die wegen der Rechteprobleme nicht kommen, die Tabelle gekillt wird

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

                                      @liv-in-sky

                                      Mein Verdacht erhärtet sich!
                                      Nach dem ersten Kontakt mit den Daten vom Tinker hängt sich dein Skript leider auf mit dem Fehler:

                                      14:44:10.127	error	javascript.0 (5057) script.js.Linux_Systeme_V04: script.js.Linux_Systeme_V04:318
                                      14:44:10.128	error	javascript.0 (5057) at writeHTML (script.js.Linux_Systeme_V04:318:64)
                                      14:44:10.128	error	javascript.0 (5057) at script.js.Linux_Systeme_V04:541:1
                                      

                                      ich hatte noch mal den ganzen Objektbaum von Linux-control gelöscht und dann baute er sich langsam weider auf.
                                      Das Skript lief so lange bist der Tinker im Objektbaum erschien

                                      EDIT:
                                      habe nochmal die alte Version genommen und die Stelle in Zeile 199, in der isOnline stand gegen info.is_online getauscht.

                                      Das Skript läuft jetzt zumindest weiter durch

                                      liv-in-sky 1 Reply Last reply Reply Quote 0
                                      • liv-in-sky
                                        liv-in-sky @Homoran last edited by liv-in-sky

                                        @Homoran bitte zeig mal den inhalt von info ordner

                                        und hast du die befehle, die bei deban funktionieren auch mal auf der console gecheckt - der hängt sich bei der frage nach dem memory auf
                                        funktioniert das ? der wert in den dp ist falsch sollte so aussehen (das script prüft ob ein datenpunkt existiert und geht dann davon aus, dass der inhalt stimmt :

                                        free -m  | awk ' NR == 2 {print $2";"$3";"$4}'
                                        

                                        Image 8.png

                                        zeigt doch mal den output auf der console von

                                        Image 9.png

                                        Homoran 2 Replies Last reply Reply Quote 0
                                        • Homoran
                                          Homoran Global Moderator Administrators @liv-in-sky last edited by Homoran

                                          @liv-in-sky sagte in HTML Tabelle Linux-Control Adapter:

                                          bitte zeig mal den inhalt von info ordner

                                          gerne, aber etwas später 😉 ich teste gerade noch so einiges.

                                          z.B. habe ich hier mit der alten Version noch die IP drin, die vom eigenen Befehl kommt.
                                          Warum die bei der VM abgeschnitten ist, erklärt sich mir nicht, der Befehl ist überall identisch.

                                          IP_NUC_VM.png

                                          Habe auch an der Stelle in dem Script ip gegen info.ip getauscht. Das klappt jetzt auch.

                                          Den Tinker (jetzt MQTT-Tinker) habe ich jetzt von der Instanz als root ohne Sudo ansprechen lassen - das klappt.
                                          Tinker_als_root.png

                                          Dann kann ich jetzt im nächsten Schritt damit mal das neue Skript starten

                                          liv-in-sky 1 Reply Last reply Reply Quote 0
                                          • liv-in-sky
                                            liv-in-sky @Homoran last edited by liv-in-sky

                                            @Homoran ja die ip ist unnötig als befehl

                                            habe ich in der beschreibung ausgebessert

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            437
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript template
                                            7
                                            201
                                            18422
                                            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