Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Fragen zu "vis"

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Fragen zu "vis"

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

      Hi.

      Aufgefallen ist mir dies bei dem Slider im Widget ctrl - Tile Heating. Verbunden hab ich ihn mit: SET_TEMPERATURE eines hm-cc-rt-dn.

      Ich hab dann mal einen: ctrl - slider horizontal mit SET_TEMPERATURE verbunden.

      In beiden fällen wird die Soll-Temperatur nicht verändert.

      Ändere ich jedoch SET_TEMPERATURE in admin bzw.

      über das ensprechende widget in legacy funktioniert es.

      Mach ich was falsch?

      Gruß

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

        Kleines Update:

        Firebug sagt beim bewegen des Sliders:

        ReferenceError: id is not defined

        var src = srcArr[val];

        Wenn jemand n Tipp hat….

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

          Ich habe gerade mal versucht das nachzustellen.

          Leider habe ich irgend welche Darstellungsprobleme und kann nicht so richtig auswählen:
          144_iobroker_vis_heating.jpg
          Ich nehme an, du meinst dieses widget, aus dem widget set METRO???

          Leider habe ich keine Heizung mit Ventilen, lediglich ein paar Raumthermostate als Temp/Feuchte-Sensoren.

          Damit kann ich das Widget leider nicht verbinden, oder doch?

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

            Ja, richtig. Ich beziehe mich auf die widgets aus dem set metro. Ich weiss nicht was du für thermostate hast, aber wenn du keine soll temperatur setzen kannst, weil nichts geregelt wird, kannst du das widget nicht sinnvoll verwenden. Du könntest damit die Temeperatur darstellen, aber dafür reicht im zweifel ein val - number widget aus dem basic set. 🙂

            Hast du evt. einen Dimmer? Mich würde interessieren ob die slider damit funktionieren. Oder irgendwas anderes was numeriche Werte entgegen nimmt…

            Gruß

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

              @ruhigundrelaxed:

              Ich weiss nicht was du für thermostate hast `
              HM-TC-IT-WM-W-EU

              @ruhigundrelaxed:

              aber wenn du keine soll temperatur setzen kannst, `
              doch, kann ich, geht aber nicht.

              kann aber daran liegen, dass das Widget nicht dafür gemacht ist. Zeigt schließlich auch die Ventilstellung an, die hat der Wandthermostat naturgemäß nicht 😉

              Dann wird es auch nicht mit einem Dimmer funktionieren, weil die Datenpunktstruktur eine ganz andere ist.

              EDIT:

              habe gerade eine Beobachtung gemacht.

              manuelle Änderung am Raumthermostat der Solltemperatur und Änderung der Isttemperatur wird erst nach refresh (F5) in ioBroker übernommen.

              Änderungen in ioBroker werden nicht im Raumthermostat übernommen - ich habe da eine Idee…..

              Gruß

              Rainer
              703_npm-debug.log

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

                Naja. Ich habe mal einen einfachen horizontal slider aus dem metro set genommen und ihn auf eine knx gruppenadresse schreiben lassen. Gleicher effekt. Nix kommt durch. Gleicher Fehler:

                ReferenceError: id is not defined

                Ich werde mich morgen nochmal durch den code quälen und vieleicht werde ich ja schlauer. Verstehe muss ich den Krempel eh, wenn ich irgendwann mal selber ein widget bauen will. 8-)

                Gruß

                Martin

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

                  Ok. Ich bin ein wenig weiter gekommen.

                  In der metro.html steht in Zeile 193:

                  > vis.setValue(id, (parseFloat(val) / factor) + min);

                  funktionieren tut aber nur wenn da:

                  > vis.setValue(****oid****, (parseFloat(val) / factor) + min);

                  steht.

                  Gruß

                  Martin

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

                    @ruhigundrelaxed:

                    Ok. Ich bin ein wenig weiter gekommen.

                    In der metro.html steht in Zeile 193:

                    > vis.setValue(id, (parseFloat(val) / factor) + min);

                    funktionieren tut aber nur wenn da:

                    > vis.setValue(****oid****, (parseFloat(val) / factor) + min);

                    steht.

                    Gruß

                    Martin `
                    Super. Vielen Dank.

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

                      Ja, aber warte bitte noch mit der Änderung. Da ist noch der Wurm drin. Ich habe Widgetübergreifende Seiteneffekte. Z.b. Wenn ich, nachdem ich den Slider benutzt habe einen Schalter bediene, geht der Slider auf 100%. Ist mir erst Gestern Abend aufgefallen. Ich melde mich wenn ich ne Lösung habe. Gruß

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

                        Das kann ich bestätigen. Als ich für dich den slider getestet habe ist mir das auch passiert.

                        Kann aber sein, dass ich den gleichen Datenpunkt in beiden widgets hatte. Dann muss das so sein.

                        an der Wand getippt auf meinem 21" Riesentablet

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

                          Ok, das Problem mit den Crossactions der Widgets scheint Browserspezifisch zu sein.

                          Bei mir ist es unter iOS Safari aufgetreten. Andere Browser zeigten dieses Verhalten bisher nicht. Ich teste aber noch.

                          Gruß

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

                            Neue Informationen:

                            Das Eingangs geschilderte Problem mit den "crossactions" der Widgets besteht weiterhin. Ich konnte es allerdings näher eingrenzen.

                            1.) Das Problem tritt nur bei "Touchdevices" auf. Reproduzieren konnte ich es auf einem Ipad sowie auf zwei Android devices.

                            2.) Das Problem tritt nur dann auf, wenn ich direkt nach Benutzung des sliders ein anderes widget z.b. einen Schalter nutze. Wenn ich jedoch zwischendrin irgendwo ins nirgendwo touche, ist alles ok.

                            Es hat also irgendwas mit den "touch" events zu tun.

                            Hat jemand einen Tipp?

                            Nutzt niemand die metro widgets?

                            Gruß

                            Martin

                            1 Reply Last reply Reply Quote 0
                            • Jey Cee
                              Jey Cee Developer last edited by

                              Beide Probleme mit dem Slider sind auch mir vorhanden. "oid" eingetragen und der Slider geht.

                              Auf einem Tablet mit Win 7 kommt Chrome zum Einsatz. Hier der gleiche Effekt das der Slider einfach so fährt.

                              Für mich sieht es so aus als ob der Slider betätigt bleibt bis man wo anders hinklickt, dabei fährt er aber in die Richtung in der geklickt wird.

                              So jetzt hab ich den Slider mal am PC mit der Maus getestet, ebenfalls Chrome. Parallel dazu war die Seite auch auf dem Tablet offen, beim ändern ist der Slider wieder auf den Ausgangswert zurück gesprungen.

                              Nachdem ich die Seite am Tablet geschlossen hab, ging es normal.

                              Das Stützt meine Theorie das der Slider auf dem Touch gerät festgehalten wird. Technisch liegt es wohl daran das es auf dem Touch Gerät das "Links-klick-halten" & "Ziehen" Ereignis nicht beendet wird wenn man den Finger vom Display nimmt.

                              Da es vom Browser unabhängig zu sein scheint, dürfte es am Slider liegen.

                              Ich hab kein Plan von js oder css, aber eine Idee wie man das problem evtl. lösen kann wenn es wirklich daran liegt dass das "Links-klick-halten" & "Ziehen" Ereignis nicht beendet wird.

                              Einfach ein Timeout im ms bereich einbauen.

                              EDIT: Ich bin auf folgenden Artikel gestoßen: http://www.mediaevent.de/javascript/touch-events.html

                              Und auf das hier: http://www.html5rocks.com/en/mobile/tou … _locale=de

                              Viel kann ich damit nicht anfangen, hab aber die Funktion ".click" im code der Widgets entdeckt, also ist es Maus optimiert. Wir bräuchten dann wohl Touch optimiert.

                              EDIT 2: In der Datei "Metro.js" steht gleich am Anfang die Erkennung ob Touch oder Maus Steuerung.

                              Ab der Zeile 439 findet sich dieser code:

                              /* To add touch support for element need create listeners for component dom element
                               if (hasTouch)
                               {
                               element.addEventListener("touchstart", touch2Mouse, true);
                               element.addEventListener("touchmove", touch2Mouse, true);
                               element.addEventListener("touchend", touch2Mouse, true);
                               }*/
                              

                              Ich hatte in Testhalber mal von seiner Auskommentierung befreit, das hat bei mir jedoch nichts geändert. Gleich danach steht der Code(die Klasse) für die Slider.

                              EDIT 3: Hier ist der selbe Fehler beschrieben: https://github.com/olton/Metro-UI-CSS/issues/651

                              marsLGman created this issue in olton/Metro-UI-CSS

                              closed slider bug on touch screen #651

                              1 Reply Last reply Reply Quote 0
                              • Jey Cee
                                Jey Cee Developer last edited by

                                So lange rum gespielt und getestet. Ich glaub jetzt gehts, wäre gut wenn das noch jemand anders Testen kann.

                                Auf einem Android 4.2 Tablet mit standard Browser geht es.

                                Dazu folgenden Code in die Metro.js, nach zeile 548 einfügen:

                                            $(document).on('touchend.metroSlider', function () {
                                				$(document).off('mousemove.metroSlider');
                                				$(document).off('mouseup.metroSlider');
                                				element.data('value', that.options.position);
                                				element.trigger('changed', that.options.position);
                                				o.changed(that.options.position, element);
                                				if (!element.hasClass('permanent-hint')) {
                                					hint.css('display', 'none');
                                                }
                                            });
                                

                                Gruß

                                Jey Cee

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

                                  @Jey Cee:

                                  So lange rum gespielt und getestet. Ich glaub jetzt gehts, wäre gut wenn das noch jemand anders Testen kann.

                                  Auf einem Android 4.2 Tablet mit standard Browser geht es.

                                  Dazu folgenden Code in die Metro.js, nach zeile 548 einfügen:

                                              $(document).on('touchend.metroSlider', function () {
                                  				$(document).off('mousemove.metroSlider');
                                  				$(document).off('mouseup.metroSlider');
                                  				element.data('value', that.options.position);
                                  				element.trigger('changed', that.options.position);
                                  				o.changed(that.options.position, element);
                                  				if (!element.hasClass('permanent-hint')) {
                                  					hint.css('display', 'none');
                                                  }
                                              });
                                  

                                  Gruß

                                  Jey Cee `
                                  Kann nicht finden, wo das eingefügt sein sollte, kannst ganze geänderte Datei hier posten?

                                  1 Reply Last reply Reply Quote 0
                                  • Jey Cee
                                    Jey Cee Developer last edited by

                                    Klar kein Problem.

                                    Wer ein Desktop Betriebssystem und Chrome einsetzt kann unter about://flags die Touch Events aktivieren. Damit geht es bei mir auf dem Tablet.
                                    282_metro.js

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

                                      @Jey Cee:

                                      Klar kein Problem.

                                      Wer ein Desktop Betriebssystem und Chrome einsetzt kann unter about://flags die Touch Events aktivieren. Damit geht es bei mir auf dem Tablet. `
                                      Danke, werde heute eine Version machen.
                                      305_betriebsstundenzaehler_095.txt

                                      1 Reply Last reply Reply Quote 0
                                      • Jey Cee
                                        Jey Cee Developer last edited by

                                        Ich hab für die Metro Widgets noch eine Schönheitskorrektur: Bei Widgets wie "nav - Tile Navigation" oder "Tile Bool" kann man eine Ikonenklasse wählen, dadurch wird ein ein Icon in der Mitte des Tiles angezeigt.

                                        Wenn man ein eigenes möchte kann man das auch über eine URL benutzen. Leider wird dieses dann immer ganz Links oben angezeigt (siehe Bild, das obere Tile ist mit Ikonenklasse das untere mit eigener Ikone).

                                        282_unbenannt1.png

                                        Damit die eigene Ikone ebenfalls so angezeigt werden kann, habe ich eine Dummy Ikonenklasse namens icon-myown angelegt. Bei dieser Klasse wird kein icon aus dem bestehenden Set verwendet sondern lediglich die Style Informationen.

                                        Um die Änderungen nach zu rüsten muss iconFont.min.css nach "\widgets\metro\css" und metro.html nach "\widgets" sowohl in den Ordner "ioBroker\node_modules\iobroker.vis\www" als auch in "ioBroker\data\files\vis" kopiert werden.

                                        @Bluefox: Die Angehängten Dateien sind aus der vis 0.1.0. Es würde mich freuen wenn die Änderung im nächsten Update dabei ist.

                                        Danke für den neuen Editor der ist wirklich gelungen.

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

                                          Im Moment exportiere ich meine views aus ccu.io und importiere die bei ioBroker.

                                          Was passiert jetzt mit den Widgets, die in ioBroker (noch) nicht vorhanden sind?

                                          Von update zu update tauchten immer mal wieder welche auf.

                                          Stören die nicht vorhandenen widgets beim rendern? Kosten solche "Leichen" unnötig Rechenpower?

                                          …wenn ja, wie könnte man sie einfach löschen? Man sieht sie ja nicht.

                                          Gesendet von meinem Cynus T7 mit Tapatalk

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

                                            @Homoran:

                                            Stören die nicht vorhandenen widgets beim rendern? Kosten solche "Leichen" unnötig Rechenpower?

                                            …wenn ja, wie könnte man sie einfach löschen? Man sieht sie ja nicht. `
                                            Eigentlich kosten die kein Rechenpower.

                                            Die müssen trotzdem in Select-Auswahl da sein.
                                            48_auswahl.png
                                            Man kann die selktieren und löschen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            53
                                            10367
                                            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