Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Fehler VIS-2 Widget Inventwo

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Fehler VIS-2 Widget Inventwo

    This topic has been deleted. Only users with topic management privileges can see it.
    • OliverIO
      OliverIO @Longbow last edited by

      @longbow

      tatsächlich.
      dann hat es aber mit dem browser im speziellen zu tun
      wie gesagt die renderengine ist bei allen browsern in ios immer die gleiche.
      leider ist ios ohne mac nicht zu debuggen.

      iventwo könnte ggfs temporär mal die console ausgabe in einen html bereich umleiten, um zu sehen was auf dem gerät für fehlermeldungen auftreten.

      auch scheint es mit dieser konfiguration zu tun zu haben, einen normalen knopf zeigt es auch in safari normal an. auch im editor wird dein widget normal angezeigt.

      1 Reply Last reply Reply Quote 0
      • skvarel
        skvarel Developer last edited by

        @jkvarel .. kannst du dir das Thema mal bitte angucken

        Longbow 1 Reply Last reply Reply Quote 0
        • Longbow
          Longbow last edited by

          Guten Morgen,

          es ist wirklich so, das es mal geht mal geht es nicht. Der Fehler das Problem kann nicht respondiert werden.
          Es muss was mit den Browser zu haben, das die was von dem Widget falsch verarbeiten. Habe es mit und ohne VPN probiert, mit und ohne Wlan im netz und von Extern. Über ioborker Pro etc.

          Mal ist es so, mal ist es nicht so. Keine Ahnung was und wo wir machen sollen und können.

          1 Reply Last reply Reply Quote 0
          • Longbow
            Longbow @skvarel last edited by

            @skvarel @jkalver danke Euch 😉

            skvarel 1 Reply Last reply Reply Quote 1
            • skvarel
              skvarel Developer @Longbow last edited by

              @longbow sagte in Fehler VIS-2 Widget Inventwo:

              @skvarel @jkalver danke Euch 😉

              Ich kann da leider nicht viel helfen, außer meinem Bengel auf die Füße zu treten 😉

              Wir haben leider auch keine Apple Geräte im Haushalt und können das nicht wirklich nachstellen.

              OliverIO 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @skvarel last edited by OliverIO

                @skvarel

                du könntest eine alphaversion machen wo du ungefähr den folgenden code einbaust. dieser leitet die ausgaben von console.log/warn/error in ein html element um.

                das kann man sogar direkt in vis2 ausprobieren. allerdings klinkt sich der code wahrscheinlich bzu spät ein, so das der fehler bereits passiert ist und daher nicht mehr erfasst wird.
                in der alpha version müsste man dafür sorgen, das das so früh als möglich ausgeführt wird.
                also am besten in die index.html mit einbauen.
                https://github.com/inventwo/ioBroker.vis-2-widgets-inventwo/blob/main/src-widgets/index.html

                in vis2 kann man das wie folgt mal probieren:

                html widget mit namen mylog anlegen
                ccaf5389-88f3-4e06-9113-78f8938ad425-image.png

                hier zum importieren mit testcode

                [
                 {
                   "tpl": "tplHtml",
                   "data": {
                     "bindings": [],
                     "name": null,
                     "comment": null,
                     "class": "mylog",
                     "filterkey": null,
                     "multi-views": null,
                     "locked": null,
                     "g_fixed": true,
                     "html": "<script>\r\n    console.log(\"log test\");\r\n    console.warn(\"warn test\");\r\n    console.error(\"error test\");\r\n    console.debug(\"debug test\");\r\n</script>",
                     "refreshInterval": null,
                     "g_common": true
                   },
                   "style": {
                     "bindings": [],
                     "left": 28,
                     "top": 70,
                     "width": "711px",
                     "height": "331px"
                   },
                   "widgetSet": "basic",
                   "_id": "i000001"
                 }
                ]
                

                css im css reiter eintragen

                   .mylog {
                     font-family: monospace;
                     white-space: pre-wrap;
                     background: #222;
                     color: #eee;
                     padding: 10px;
                     border-radius: 6px;
                     max-height: 300px;
                     overflow-y: auto;
                     margin: 20px;
                   }
                   .mylog .log    { color: #bada55; }
                   .mylog .warn   { color: #ffae42; }
                   .mylog .error  { color: #ff5555; }
                   .mylog .debug  { color: #66b3ff; }
                

                javascript in skripte reiter eintragen

                   (function() {
                     const orig = {
                       log:   console.log,
                       warn:  console.warn,
                       error: console.error,
                       debug: console.debug,
                     };
                
                     function appendLog(type, args) {
                       const $log = $('.mylog');
                       // Zeile bauen
                       const msg = Array.from(args).map(a => {
                         // Objekt? Dann JSON serialisieren.
                         if (typeof a === 'object' && a !== null) {
                           try {
                             return JSON.stringify(a);
                           } catch { return '[object]'; }
                         }
                         return String(a);
                       }).join(' ');
                       $log.append($('<div>').addClass(type).text(`[${type}] ${msg}`));
                       $log.scrollTop($log[0].scrollHeight);
                     }
                
                     // Funktionen überschreiben
                     ['log', 'warn', 'error', 'debug'].forEach(function(type) {
                       console[type] = function(...args) {
                         appendLog(type, args);
                         orig[type].apply(console, args);
                       };
                     });
                   })();
                

                in den runtime mode gehen und reload der seite durchführen

                3f4cff14-3908-467f-99ce-f8754b5d744e-image.png

                skvarel OliverIO 2 Replies Last reply Reply Quote 1
                • skvarel
                  skvarel Developer @OliverIO last edited by

                  @oliverio .. wie gesagt, das muss sich @jkvarel angucken.

                  Ich bin nur der Designer vom vis-icontwo Adapter. Die Widget Adapter macht komplett mein Sohn.

                  OliverIO 1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @skvarel last edited by

                    @skvarel sagte in Fehler VIS-2 Widget Inventwo:

                    Die Widget Adapter macht komplett mein Sohn.

                    ah jetzt, kenne eure rollen und arbeitsteilung nicht.
                    Dein Bengel hätte auch die liebevolle Bezeichnung für deinen Adapter sein können 🙂

                    skvarel 1 Reply Last reply Reply Quote 1
                    • skvarel
                      skvarel Developer @OliverIO last edited by

                      @oliverio sagte in Fehler VIS-2 Widget Inventwo:

                      Dein Bengel hätte auch die liebevolle Bezeichnung für deinen Adapter sein können 🙂

                      In dem Fall ist mein Bengel tatsächlich mein Sohn 😉

                      Kurz zum Hintergrund: Er ist reiner Programmierer aber kein Nutzer. Er hat mit dem ioBroker sonst nichts zu tun. Deswegen kommen manche Dinge erst im Nachhinein ans Licht. Hauptsächlich wenn ich mit dem ioBroker arbeite.

                      Ich habe jetzt meine ganze VIS in VIS2 nachgebaut .... 26 Views mit rund 1.000 Widgets. Da kamen noch zwei/drei Sachen auf, die er beheben muss.

                      1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @OliverIO last edited by

                        @oliverio sagte in Fehler VIS-2 Widget Inventwo:

                        javascript in skripte reiter eintragen

                        noch ein gedanke zum code was mir eingefallen ist.
                        evtl müsste man die meldungen zunächst auch erst noch in einer variable puffern, da die ausgabe in mylog erst erfolgen kann, wenn das html element existiert. alle meldungen zuvor wären dann ebenfalls verloren.

                        hier nochmal ein optimierter code

                           (function() {
                             const orig = {
                               log:   console.log,
                               warn:  console.warn,
                               error: console.error,
                               debug: console.debug,
                             };
                             let mylog = []
                        
                             function appendLog(type, args) {
                               const $log = $('.mylog');
                               // Zeile bauen
                               const msg = Array.from(args).map(a => {
                                 // Objekt? Dann JSON serialisieren.
                                 if (typeof a === 'object' && a !== null) {
                                   try {
                                     return JSON.stringify(a);
                                   } catch { return '[object]'; }
                                 }
                                 return String(a);
                               }).join(' ');
                               mylog.push({type,msg})
                               $log.append($('<div>').addClass(type).text(`[${type}] ${msg}`));
                               $log.scrollTop($log[0].scrollHeight);
                             }
                             function output(){
                               $log.html("");
                               mylog.forEach(line=>{
                                 $log.append($('<div>').addClass(line.type).text(`[${line.type}] ${line.msg}`));
                                 $log.scrollTop($log[0].scrollHeight);
                        
                               })
                        
                             }
                        
                             // Funktionen überschreiben
                             ['log', 'warn', 'error', 'debug'].forEach(function(type) {
                               console[type] = function(...args) {
                                 appendLog(type, args);
                                 orig[type].apply(console, args);
                               };
                             });
                           })();
                        
                        

                        1 Reply Last reply Reply Quote 1
                        • Longbow
                          Longbow last edited by

                          @oliverio Könnte dein Sohn schon mal schauen? Es geht von 20x nur 1x kann es aber auch nicht nachbauen.

                          skvarel 1 Reply Last reply Reply Quote 0
                          • skvarel
                            skvarel Developer @Longbow last edited by

                            @longbow sagte in Fehler VIS-2 Widget Inventwo:

                            @oliverio Könnte dein Sohn schon mal schauen? Es geht von 20x nur 1x kann es aber auch nicht nachbauen.

                            .. ich denke, du meinst meinen Sohn 😉

                            @jkvarel ... guckst du bitte hier.

                            1 Reply Last reply Reply Quote 0
                            • jkvarel
                              jkvarel Developer last edited by

                              Ich habe den Code eingefügt. @Longbow , bitte Version 0.3.4 installieren und den Schritten 1, 2 und 4 von @OliverIO folgen

                              1 Reply Last reply Reply Quote 1
                              • jkvarel
                                jkvarel Developer last edited by

                                Bitte Version 0.3.5 nutzen. Beim Testen des Codes hatte ich das Universal Widget auskommentiert und vor dem Hochladen vergessen wieder mit reinzunehmen.

                                Longbow 1 Reply Last reply Reply Quote 1
                                • Longbow
                                  Longbow @jkvarel last edited by Longbow

                                  @jkvarel die Version installiert, nur leider wenn ich das wie @Oliver-0 beschrieben hat, bleibt die Seite schwarz, es wir gar nichts angezeigt

                                  hab gerade im Log geschaut, das steht da

                                  Invalid pattern on subscribe: The pattern ""bindings": [], "left": 28, "top": 70, "width": "711px", "height": "331px"" is not a valid ID pattern
                                  
                                  web.0
                                  2025-08-10 16:06:17.317	error	Invalid pattern on subscribe: The pattern ""tpl": "tplHtml", "data": { "bindings": [], "name": null, "comment": null, "class": "mylog", "filterkey": null, "multi-views": null, "locked": null, "g_fixed": true, "html": "<script>\r\n console.log(\"log test\")" is not a valid ID pattern
                                  
                                  web.0
                                  2025-08-10 16:03:35.816	error	Invalid pattern on subscribe: The pattern ""bindings": [], "left": 28, "top": 70, "width": "711px", "height": "331px"" is not a valid ID pattern
                                  
                                  web.0
                                  2025-08-10 16:03:35.815	error	Invalid pattern on subscribe: The pattern ""tpl": "tplHtml", "data": { "bindings": [], "name": null, "comment": null, "class": "mylog", "filterkey": null, "multi-views": null, "locked": null, "g_fixed": true, "html": "<script>\r\n console.log(\"log test\")" is not a valid ID pattern
                                  
                                  OliverIO 1 Reply Last reply Reply Quote 0
                                  • OliverIO
                                    OliverIO @Longbow last edited by

                                    @longbow

                                    ich habe das gerade mal bei mir ausprobiert und es funktioniert.

                                    prüfe nochmal:

                                    1. den skript reiter wieder leeren. der code ist jetzt im widget code enthalten.
                                    2. css mal lassen
                                    3. und zum schluss dann das html widget mit dem namen mylog anlegen wie oben beschrieben.

                                    der start des logs sieht im editor dann so aus
                                    684a6c2b-f2d4-412b-960f-810ad9c5167b-image.png

                                    im runtime wird der code leider nicht geladen.

                                    Longbow 1 Reply Last reply Reply Quote 0
                                    • Longbow
                                      Longbow @OliverIO last edited by Longbow

                                      @oliverio

                                      ich mal das falsch mit dem HTML import wohl..

                                      OliverIO 1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO @Longbow last edited by

                                        @longbow

                                        was heißt, das steht im html widget?
                                        das ist der code um ein widget zu importieren
                                        das ist nichts was man in das html feld des html widgets einträgt

                                        das sollte so aussehen wenn man das html widget auswählt
                                        eb55e7ed-9f90-43ad-874f-1c5424eca0ad-image.png

                                        und der inhalt des html feldes

                                        a5657fc4-f16a-4c54-9c97-fc940601f6d3-image.png

                                        Longbow 1 Reply Last reply Reply Quote 0
                                        • Longbow
                                          Longbow @OliverIO last edited by Longbow

                                          @oliverio Ok das mit dem Import habe ich... aber was ist das HMTL Edit gemeint... das erste bild sieht bei mir auch so aus.

                                          Greenshot 2025-08-10 17.12.45.png Greenshot 2025-08-10 17.12.34.png Greenshot 2025-08-10 17.12.23.png Greenshot 2025-08-10 17.11.03.png

                                          OliverIO jkvarel 2 Replies Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO @Longbow last edited by OliverIO

                                            @longbow

                                            html edit ist der knopf vom html feld
                                            um den inhalt zu editieren/bearbeiten.
                                            4434e145-3aff-42a8-bc58-87422252ea24-image.png

                                            es sollte im edit modus nach dem neuladen des kompletten bildschirmes funktionieren

                                            habe gerade festgestellt, das es im runtime nur funktioniert wenn ein iventwo widget auch angelegt ist, das hatte ich nicht.

                                            38c5d437-32e8-4630-9324-60f8d1c2a5f0-image.png

                                            und natürlich solltest du prüfen ob du die richtige version geladen hast
                                            f2102a00-efdb-4a7d-a592-0010330a738d-image.png

                                            0.3.5

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            498
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            44
                                            666
                                            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