Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.4k

Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

Scheduled Pinned Locked Moved Tester
appdark-modeiqontrolresponsivevisvisualisierungvisualizationwidget
7.6k Posts 296 Posters 7.0m Views 201 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • dslraserD dslraser

    @s-bormann
    Ich habe bisher eine kleine Kachel als Wert benutzt um mir html Listen anzuzeigen.
    Eine aktive Kachel ist hell mit entsprechendem Symbol und eine inaktive mit anderem Symbol.

    aktiv

    Screenshot_20201007-203627_Chrome.jpg

    inaktiv

    Screenshot_20201007-203647_Chrome.jpg

    Liste als PopUp

    Screenshot_20201007-203301_Chrome.jpg

    Jetzt möchte ich das Ganze als Widget nutzen, das funktioniert auch soweit, bis auf eine Kleinigkeit. Ich bekomme den Überzug der Kachel nicht weg

    links als Wert /rechts als Widget

    Screenshot_20201007-203238_Chrome.jpg

    Das Widget an sich gefällt mir besser, da mehr Bildschirmfläche auf dem Handy benutzt wird

    Screenshot_20201007-203318_Chrome.jpg

    Wie bekomme ich den Überzug bzw. "Schleier" von dem 0,5x0,5 Icon weg ?

    Screenshot_20201007-211712_Chrome.jpg

    s.bormannS Offline
    s.bormannS Offline
    s.bormann
    Most Active
    wrote on last edited by
    #3352

    @dslraser sagte in Test Adapter iQontrol 1.2.x:

    @s-bormann
    Ich habe bisher eine kleine Kachel als Wert benutzt um mir html Listen anzuzeigen.
    Eine aktive Kachel ist hell mit entsprechendem Symbol und eine inaktive mit anderem Symbol.

    aktiv

    Screenshot_20201007-203627_Chrome.jpg

    inaktiv

    Screenshot_20201007-203647_Chrome.jpg

    Liste als PopUp

    Screenshot_20201007-203301_Chrome.jpg

    Jetzt möchte ich das Ganze als Widget nutzen, das funktioniert auch soweit, bis auf eine Kleinigkeit. Ich bekomme den Überzug der Kachel nicht weg

    links als Wert /rechts als Widget

    Screenshot_20201007-203238_Chrome.jpg

    Das Widget an sich gefällt mir besser, da mehr Bildschirmfläche auf dem Handy benutzt wird

    Screenshot_20201007-203318_Chrome.jpg

    Wie bekomme ich den Überzug bzw. "Schleier" von dem 0,5x0,5 Icon weg ?

    Screenshot_20201007-211712_Chrome.jpg

    Hi,
    die neue Github-Version hat das jetzt als Option
    VG

    dslraserD 1 Reply Last reply
    0
    • B blackeagle998

      @s-bormann
      Hi, siehst du irgendeine Möglichkeit die .js und .css Dateien im Ordner /userwidgets direkt über die iQontrol Config Seite bearbeiten zu können?

      Dieses ständige hochladen bei Änderungen nervt etwas :wink:

      s.bormannS Offline
      s.bormannS Offline
      s.bormann
      Most Active
      wrote on last edited by s.bormann
      #3353

      @blackeagle998 sagte in Test Adapter iQontrol 1.2.x:

      @s-bormann
      Hi, siehst du irgendeine Möglichkeit die .js und .css Dateien im Ordner /userwidgets direkt über die iQontrol Config Seite bearbeiten zu können?

      Dieses ständige hochladen bei Änderungen nervt etwas :wink:

      Wir denken wohl oft an das Gleiche. Schau mal in der aktuellen github-Version :)

      8f05206b-517a-4d2c-a93e-81319c70f986-image.png

      1 Reply Last reply
      1
      • B blackeagle998

        @dslraser @s-bormann
        Hmm stimmt, jetzt lässt sich der virtuelle State einer Widget Kachel nicht mehr schalten, wenn das Icon blank ist.
        Kann man die Option pro Kachel steuerbar machen?

        s.bormannS Offline
        s.bormannS Offline
        s.bormann
        Most Active
        wrote on last edited by
        #3354

        @blackeagle998 sagte in Test Adapter iQontrol 1.2.x:

        @dslraser @s-bormann
        Hmm stimmt, jetzt lässt sich der virtuelle State einer Widget Kachel nicht mehr schalten, wenn das Icon blank ist.
        Kann man die Option pro Kachel steuerbar machen?

        Hi,
        ist jetzt als Option in der aktuellen Github-Version verfügbar (Mauszeiger-Events für Icon).
        VG

        1 Reply Last reply
        0
        • dslraserD dslraser

          @s-bormann sagte in Test Adapter iQontrol 1.2.x:

          Sag mal, kann man mit den neuen ADDITIONAL_CONTROLS nicht so was basteln? Eine value-List, in der man den Sender auswählt, und darunter ein oder mehrere Strings mit den EPG-Infos. Dahinter steckt dann ein Blockly-Script, dass dann die String-Datenpunkte entsprechend der Auswahl der value-List befüllt.

          meinst Du so in etwa ?

          Bildschirmfoto 2020-10-07 um 22.18.34.png

          EDIT: übrigens sind beim Start trotz anderer Einstellung alle Sektionen geöffnet

          Bildschirmfoto 2020-10-07 um 22.46.12.png

          s.bormannS Offline
          s.bormannS Offline
          s.bormann
          Most Active
          wrote on last edited by
          #3355

          @dslraser sagte in Test Adapter iQontrol 1.2.x:

          @s-bormann sagte in Test Adapter iQontrol 1.2.x:

          Sag mal, kann man mit den neuen ADDITIONAL_CONTROLS nicht so was basteln? Eine value-List, in der man den Sender auswählt, und darunter ein oder mehrere Strings mit den EPG-Infos. Dahinter steckt dann ein Blockly-Script, dass dann die String-Datenpunkte entsprechend der Auswahl der value-List befüllt.

          meinst Du so in etwa ?

          Bildschirmfoto 2020-10-07 um 22.18.34.png

          Ja, das sieht doch ganz gut aus, oder?

          EDIT: übrigens sind beim Start trotz anderer Einstellung alle Sektionen geöffnet

          Bildschirmfoto 2020-10-07 um 22.46.12.png

          Bei mir funktioniert das genau, wie es soll.

          Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).
          VG!

          dslraserD 1 Reply Last reply
          0
          • M muuulle

            @s-bormann
            Magst du einmal einen kurzen Ausblick geben, was deine nächsten Schwerpunkte beim Adapter sind?

            Ich denke, dass ich nicht der einzige Neugierige bin 😊

            s.bormannS Offline
            s.bormannS Offline
            s.bormann
            Most Active
            wrote on last edited by
            #3356

            @muuulle sagte in Test Adapter iQontrol 1.2.x:

            @s-bormann
            Magst du einmal einen kurzen Ausblick geben, was deine nächsten Schwerpunkte beim Adapter sind?

            Ich denke, dass ich nicht der einzige Neugierige bin 😊

            Hmm, das ganze geschieht mehr so spontan und ohne so ganz ausgeklügelten Plan :)

            Manchmal fasziniert mich einfach ein Gedanke oder eine Idee (die kommen ja auch oft hier aus dem Forum).

            Ein paar andere Dinge stehen zwar noch auf einer ToDo-Liste, allerdings weiß ich noch nicht, ob und wann ich das umsetzen will und kann.

            Was ich gerne noch machen würde (aber das geht vermutlich nur, wenn ich Urlaub und mehr zusammenhängende Zeit habe), ist eine Möglichkeit, automatisch Räume und Geräte einfügen zu lassen (entsprechend der Raum-Liste von ioBroker). Aktuell ist mir das aber ein zu großes Projekt.

            Zunächst denke ich deshalb eher, dass ich etwas Zeit in die feste Implementation von Widgets stecken werde. Hier sind ja schon einige ziemlich gute Entwürfe entstanden, die ich gerne (natürlich mit Zustimmung der Entwickler) fest in iQontrol integrieren würde. Hier denke ich gerade darüber nach, wie man das dann mit den dazu benötigten Datenpunkten lösen kann.

            Ich hoffe, das hilft erst mal :)

            VG!

            1 Reply Last reply
            3
            • s.bormannS s.bormann

              @dslraser sagte in Test Adapter iQontrol 1.2.x:

              @s-bormann
              Ich habe bisher eine kleine Kachel als Wert benutzt um mir html Listen anzuzeigen.
              Eine aktive Kachel ist hell mit entsprechendem Symbol und eine inaktive mit anderem Symbol.

              aktiv

              Screenshot_20201007-203627_Chrome.jpg

              inaktiv

              Screenshot_20201007-203647_Chrome.jpg

              Liste als PopUp

              Screenshot_20201007-203301_Chrome.jpg

              Jetzt möchte ich das Ganze als Widget nutzen, das funktioniert auch soweit, bis auf eine Kleinigkeit. Ich bekomme den Überzug der Kachel nicht weg

              links als Wert /rechts als Widget

              Screenshot_20201007-203238_Chrome.jpg

              Das Widget an sich gefällt mir besser, da mehr Bildschirmfläche auf dem Handy benutzt wird

              Screenshot_20201007-203318_Chrome.jpg

              Wie bekomme ich den Überzug bzw. "Schleier" von dem 0,5x0,5 Icon weg ?

              Screenshot_20201007-211712_Chrome.jpg

              Hi,
              die neue Github-Version hat das jetzt als Option
              VG

              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              wrote on last edited by
              #3357

              @s-bormann sagte in Test Adapter iQontrol 1.3.x:

              Hi,
              die neue Github-Version hat das jetzt als Option
              VG

              Danke Dir, aber welche Option ist das ?

              s.bormannS 1 Reply Last reply
              0
              • dslraserD dslraser

                @s-bormann sagte in Test Adapter iQontrol 1.3.x:

                Hi,
                die neue Github-Version hat das jetzt als Option
                VG

                Danke Dir, aber welche Option ist das ?

                s.bormannS Offline
                s.bormannS Offline
                s.bormann
                Most Active
                wrote on last edited by
                #3358

                @dslraser 924d17f3-e532-4a6a-9a68-01ce40aa17b0-image.png
                Gibts für aktiv/inaktiv/vergrößert

                dslraserD 1 Reply Last reply
                0
                • s.bormannS s.bormann

                  @dslraser 924d17f3-e532-4a6a-9a68-01ce40aa17b0-image.png
                  Gibts für aktiv/inaktiv/vergrößert

                  dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  wrote on last edited by
                  #3359

                  @s-bormann
                  Danke, funktioniert wie gewünscht. 👍

                  1 Reply Last reply
                  0
                  • dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    wrote on last edited by
                    #3360

                    @s-bormann
                    hattest Du das gelesen ? (dazu hast Du Dich bisher noch nicht geäußert)

                    https://forum.iobroker.net/post/495518

                    1 Reply Last reply
                    0
                    • s.bormannS s.bormann

                      @dslraser sagte in Test Adapter iQontrol 1.2.x:

                      @s-bormann sagte in Test Adapter iQontrol 1.2.x:

                      Sag mal, kann man mit den neuen ADDITIONAL_CONTROLS nicht so was basteln? Eine value-List, in der man den Sender auswählt, und darunter ein oder mehrere Strings mit den EPG-Infos. Dahinter steckt dann ein Blockly-Script, dass dann die String-Datenpunkte entsprechend der Auswahl der value-List befüllt.

                      meinst Du so in etwa ?

                      Bildschirmfoto 2020-10-07 um 22.18.34.png

                      Ja, das sieht doch ganz gut aus, oder?

                      EDIT: übrigens sind beim Start trotz anderer Einstellung alle Sektionen geöffnet

                      Bildschirmfoto 2020-10-07 um 22.46.12.png

                      Bei mir funktioniert das genau, wie es soll.

                      Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).
                      VG!

                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      wrote on last edited by
                      #3361

                      @s-bormann sagte in Test Adapter iQontrol 1.3.x:

                      Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).

                      Funktioniert auch bei mir, dann werde ich mal alle meine Sender einbauen :+1:
                      Kannst Du bitte die Beschriftung für "Channels:" auch "umbenennbar" machen.

                      Bildschirmfoto 2020-10-09 um 23.03.35.png

                      s.bormannS 1 Reply Last reply
                      0
                      • B Offline
                        B Offline
                        blackeagle998
                        wrote on last edited by
                        #3362

                        @s-bormann
                        Mensch völlig vergessen:
                        Ich kann leider keine Wiki Seite anlegen, auch nicht wenn ich eingeloggt bin.
                        Habe mir angeschaut welcher Button da sein sollte, der ist definitiv nicht da.

                        s.bormannS 1 Reply Last reply
                        0
                        • I Offline
                          I Offline
                          io_laurent
                          wrote on last edited by
                          #3363

                          @s-bormann
                          Guten Morgen, ich habe hier eine RGB Lampe, bei der ich über iQontrol die Farbe ändern will. Eine Kachel dafür konnte ich anlegen, allerdings wird mir die Möglichkeit, die Farbe zu ändern, nur manchmal angezeigt. Farbtemperatur und dimmen wird immer angezeigt und ich kann die Werte ändern, Farbe aber nur manchmal. Kannst du mir nen Tipp geben, wie ich die Farbe immer einblenden und ändern kann?

                          Und natürlich vielen Dank für deine Arbeit un die kontinuierliche Weiterentwicklung! Du baust so schnell neue Features ein, daß ich nicht nachkomme, alles auszuprobieren.

                          Gruß, io_laurent

                          M s.bormannS 2 Replies Last reply
                          0
                          • I io_laurent

                            @s-bormann
                            Guten Morgen, ich habe hier eine RGB Lampe, bei der ich über iQontrol die Farbe ändern will. Eine Kachel dafür konnte ich anlegen, allerdings wird mir die Möglichkeit, die Farbe zu ändern, nur manchmal angezeigt. Farbtemperatur und dimmen wird immer angezeigt und ich kann die Werte ändern, Farbe aber nur manchmal. Kannst du mir nen Tipp geben, wie ich die Farbe immer einblenden und ändern kann?

                            Und natürlich vielen Dank für deine Arbeit un die kontinuierliche Weiterentwicklung! Du baust so schnell neue Features ein, daß ich nicht nachkomme, alles auszuprobieren.

                            Gruß, io_laurent

                            M Offline
                            M Offline
                            martinschm
                            wrote on last edited by martinschm
                            #3364

                            @s-bormann : Mir ist mal aufgefallen, das wenn man den Namen einer Ansicht ändert, danach die Verknüpfungen mit der Ansicht nicht mehr funktioniert und man die neu anlegen oder anpassen muß.

                            Vermutlich wird der Name als Referenz verwendet. Könnte man das so ändern, das der Name nur noch ein String ist und das Objekt "Ansicht" eine feste unique ID hat?

                            Dann bricht nichts wenn man mal was umbenennt.

                            s.bormannS 1 Reply Last reply
                            0
                            • dslraserD dslraser

                              @s-bormann sagte in Test Adapter iQontrol 1.3.x:

                              Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).

                              Funktioniert auch bei mir, dann werde ich mal alle meine Sender einbauen :+1:
                              Kannst Du bitte die Beschriftung für "Channels:" auch "umbenennbar" machen.

                              Bildschirmfoto 2020-10-09 um 23.03.35.png

                              s.bormannS Offline
                              s.bormannS Offline
                              s.bormann
                              Most Active
                              wrote on last edited by
                              #3365

                              @dslraser sagte in Test Adapter iQontrol 1.3.x:

                              @s-bormann sagte in Test Adapter iQontrol 1.3.x:

                              Für die REMOTE-Sektionen wurde jetzt eine eigene Option eingebaut (aktuelle Github-Version).

                              Funktioniert auch bei mir, dann werde ich mal alle meine Sender einbauen :+1:
                              Kannst Du bitte die Beschriftung für "Channels:" auch "umbenennbar" machen.

                              Bildschirmfoto 2020-10-09 um 23.03.35.png

                              Ist es schon. Guck noch mal in den Optionen. LG

                              K 1 Reply Last reply
                              0
                              • B blackeagle998

                                @s-bormann
                                Mensch völlig vergessen:
                                Ich kann leider keine Wiki Seite anlegen, auch nicht wenn ich eingeloggt bin.
                                Habe mir angeschaut welcher Button da sein sollte, der ist definitiv nicht da.

                                s.bormannS Offline
                                s.bormannS Offline
                                s.bormann
                                Most Active
                                wrote on last edited by
                                #3366

                                @blackeagle998 sagte in Test Adapter iQontrol 1.3.x:

                                @s-bormann
                                Mensch völlig vergessen:
                                Ich kann leider keine Wiki Seite anlegen, auch nicht wenn ich eingeloggt bin.
                                Habe mir angeschaut welcher Button da sein sollte, der ist definitiv nicht da.

                                Hmm, komisch, eigentlich sollte es laut Github freigeschaltet sein.

                                Also Workaround kannst Du vielleicht einfach ein Issue anlegen, dann kopiere ich das von Hand in das Wiki, sobald Du das "Go" gibst.

                                1 Reply Last reply
                                0
                                • M martinschm

                                  @s-bormann : Mir ist mal aufgefallen, das wenn man den Namen einer Ansicht ändert, danach die Verknüpfungen mit der Ansicht nicht mehr funktioniert und man die neu anlegen oder anpassen muß.

                                  Vermutlich wird der Name als Referenz verwendet. Könnte man das so ändern, das der Name nur noch ein String ist und das Objekt "Ansicht" eine feste unique ID hat?

                                  Dann bricht nichts wenn man mal was umbenennt.

                                  s.bormannS Offline
                                  s.bormannS Offline
                                  s.bormann
                                  Most Active
                                  wrote on last edited by
                                  #3367

                                  @martinschm sagte in Test Adapter iQontrol 1.3.x:

                                  @s-bormann : Mir ist mal aufgefallen, das wenn man den Namen einer Ansicht ändert, danach die Verknüpfungen mit der Ansicht nicht mehr funktioniert und man die neu anlegen oder anpassen muß.

                                  Vermutlich wird der Name als Referenz verwendet. Könnte man das so ändern, das der Name nur noch ein String ist und das Objekt "Ansicht" eine feste unique ID hat?

                                  Dann bricht nichts wenn man mal was umbenennt.

                                  Eigentlich sollte er das automatisch anpassen. Habe das auch gerade noch mal getestet, bei mir macht er das auch korrekt. Wenn es bei Dir weiter nicht geht, dann mach doch mal die F12-Konsole auf während des Umbenennens und schau, ob es Fehlermeldungen gibt VG

                                  M 1 Reply Last reply
                                  0
                                  • I io_laurent

                                    @s-bormann
                                    Guten Morgen, ich habe hier eine RGB Lampe, bei der ich über iQontrol die Farbe ändern will. Eine Kachel dafür konnte ich anlegen, allerdings wird mir die Möglichkeit, die Farbe zu ändern, nur manchmal angezeigt. Farbtemperatur und dimmen wird immer angezeigt und ich kann die Werte ändern, Farbe aber nur manchmal. Kannst du mir nen Tipp geben, wie ich die Farbe immer einblenden und ändern kann?

                                    Und natürlich vielen Dank für deine Arbeit un die kontinuierliche Weiterentwicklung! Du baust so schnell neue Features ein, daß ich nicht nachkomme, alles auszuprobieren.

                                    Gruß, io_laurent

                                    s.bormannS Offline
                                    s.bormannS Offline
                                    s.bormann
                                    Most Active
                                    wrote on last edited by
                                    #3368

                                    @io_laurent sagte in Test Adapter iQontrol 1.3.x:

                                    @s-bormann
                                    Guten Morgen, ich habe hier eine RGB Lampe, bei der ich über iQontrol die Farbe ändern will. Eine Kachel dafür konnte ich anlegen, allerdings wird mir die Möglichkeit, die Farbe zu ändern, nur manchmal angezeigt. Farbtemperatur und dimmen wird immer angezeigt und ich kann die Werte ändern, Farbe aber nur manchmal. Kannst du mir nen Tipp geben, wie ich die Farbe immer einblenden und ändern kann?

                                    Und natürlich vielen Dank für deine Arbeit un die kontinuierliche Weiterentwicklung! Du baust so schnell neue Features ein, daß ich nicht nachkomme, alles auszuprobieren.

                                    Gruß, io_laurent

                                    Hi,
                                    bitte Logs aus der Entwickerkonsole schicken, einmal wenn es geht und einmal wenn es nicht geht, damit man vergleichen kann. Bitte auch einen Screenshot von der Konfiguration und den RAW der verwendeten Datenpunkte.
                                    VG!

                                    1 Reply Last reply
                                    0
                                    • s.bormannS Offline
                                      s.bormannS Offline
                                      s.bormann
                                      Most Active
                                      wrote on last edited by
                                      #3369

                                      Für alle Widget-Entwickler, z.B. @blackeagle998 oder @dslraser und alle Interessierten: Es gibt

                                      Neues zu Widgets:
                                      Die Plattform zur Entwicklung von Widgets wächst so langsam. Was nun mit der aktuellen Github-Version geht, ist folgendes:

                                      • Man kann im Unterordner /userwidgets HTML, CSS und JS-Dateien erstellen oder hochladen und (mit Click auf das Datei-Icon) auch direkt bearbeiten

                                      • Wenn man im head-Teil der Widget-HTML-Seite einen Meta-Tag mit dem Schema
                                        <meta name="widget-datapoint" content="postMessageTest.MyState" data-type="string" data-role="text" />
                                        einfügt, erstellt iQontrol den Datenpunkt iqontrol.<instanz>.Widgets.postMessageTest.MyState

                                        (der Datenpunkt wird aber nur erstellt, wenn man das Widget auch als URL oder BACKGROUND_URL bei einem seiner Gerätekacheln angegeben hat. Weitere Konfigurationen wie z.B. data-unit stehen in der Readme)

                                      • Um das Widget mit diesem Datenpunkt kommunizieren zu lassen, kann man die postMessage-Kommunikation nutzen. Diese wurde um die Befehle setWidgetState, getWidgetState und getWidgetStateSubscribed ergänzt (siehe Readme, hier findet sich auch eine Beispiel-Datei)

                                      Was ist der Plan?
                                      Die Idee dahinter wäre, dass wir hier zusammen neue Widgets erstellen und die schon bestehenden tollen Widgets so umgestalten, dass sie komplett unabhängig von externen Datenpunkten und externen Scripten werden.

                                      Sprich: Alle Logik (javascript etc.) sollte in die Widget-Webseite direkt eingebunden werden, so dass man keine externen Scripte mehr im Javascript-Adapter erstellen muss. Die noch benötigten Datenpunkte kann sich das Widget dann über den oben beschriebenen meta-Tag selbst erstellen.

                                      Ich plane auch noch, ein paar weitere Meta-Tags hinzuzufügen, mit dem sich das Widget seine Gerätekachel selbst konfigurieren kann (z.B. die Größe der Kachel, Icon etc.). Damit könnte dann z.B. auch eine "Widget hier hinzufügen"-Funktion bespielt werden. So könnte auch ein Meta-Tag mit einem Info-Text, der beim Hinzufügen angezeigt wird ganz nützlich sein (z.B. für Hilfestellungen oder Credits / Copyright des Erstellers etc.).

                                      Wenn dann damit gute und autark funktionierende Widgets entstanden sind, können diese fest in iQontrol integriert werden und damit allen auf einfache Weise zugänglich gemacht werden.

                                      Viel Spaß beim Testen und Entwickeln :)
                                      VG

                                      B 1 Reply Last reply
                                      6
                                      • s.bormannS s.bormann

                                        Für alle Widget-Entwickler, z.B. @blackeagle998 oder @dslraser und alle Interessierten: Es gibt

                                        Neues zu Widgets:
                                        Die Plattform zur Entwicklung von Widgets wächst so langsam. Was nun mit der aktuellen Github-Version geht, ist folgendes:

                                        • Man kann im Unterordner /userwidgets HTML, CSS und JS-Dateien erstellen oder hochladen und (mit Click auf das Datei-Icon) auch direkt bearbeiten

                                        • Wenn man im head-Teil der Widget-HTML-Seite einen Meta-Tag mit dem Schema
                                          <meta name="widget-datapoint" content="postMessageTest.MyState" data-type="string" data-role="text" />
                                          einfügt, erstellt iQontrol den Datenpunkt iqontrol.<instanz>.Widgets.postMessageTest.MyState

                                          (der Datenpunkt wird aber nur erstellt, wenn man das Widget auch als URL oder BACKGROUND_URL bei einem seiner Gerätekacheln angegeben hat. Weitere Konfigurationen wie z.B. data-unit stehen in der Readme)

                                        • Um das Widget mit diesem Datenpunkt kommunizieren zu lassen, kann man die postMessage-Kommunikation nutzen. Diese wurde um die Befehle setWidgetState, getWidgetState und getWidgetStateSubscribed ergänzt (siehe Readme, hier findet sich auch eine Beispiel-Datei)

                                        Was ist der Plan?
                                        Die Idee dahinter wäre, dass wir hier zusammen neue Widgets erstellen und die schon bestehenden tollen Widgets so umgestalten, dass sie komplett unabhängig von externen Datenpunkten und externen Scripten werden.

                                        Sprich: Alle Logik (javascript etc.) sollte in die Widget-Webseite direkt eingebunden werden, so dass man keine externen Scripte mehr im Javascript-Adapter erstellen muss. Die noch benötigten Datenpunkte kann sich das Widget dann über den oben beschriebenen meta-Tag selbst erstellen.

                                        Ich plane auch noch, ein paar weitere Meta-Tags hinzuzufügen, mit dem sich das Widget seine Gerätekachel selbst konfigurieren kann (z.B. die Größe der Kachel, Icon etc.). Damit könnte dann z.B. auch eine "Widget hier hinzufügen"-Funktion bespielt werden. So könnte auch ein Meta-Tag mit einem Info-Text, der beim Hinzufügen angezeigt wird ganz nützlich sein (z.B. für Hilfestellungen oder Credits / Copyright des Erstellers etc.).

                                        Wenn dann damit gute und autark funktionierende Widgets entstanden sind, können diese fest in iQontrol integriert werden und damit allen auf einfache Weise zugänglich gemacht werden.

                                        Viel Spaß beim Testen und Entwickeln :)
                                        VG

                                        B Offline
                                        B Offline
                                        blackeagle998
                                        wrote on last edited by
                                        #3370

                                        @s-bormann
                                        Hallo Sebastian, das hört sich super an und ich bin gespannt darauf, das auszuprobieren.
                                        Mir drängen sich aber zwei Fragen auf, wo mir nicht klar ist, wie das zu realisieren ist:

                                        1. Ich baue die HTML Inhalte in Abhängigkeit verschiedener Datenpunkte zusammen. Beispielsweise wird eine Staubsauger Fehlermeldung nur angezeigt, wenn der entsprechende Datenpunkt auch auf Fehler steht.
                                          Ich kann doch keine HTML Datei mit if/then/else erstellen oder?

                                        2. Ich aktualisiere die HTML Erstellung in Abhängigkeit verschiedener Datenpunkte. Ändert sich irgendein Datenpunkt, der für das HTML relevant ist, wird der gesamte HTML Inhalt neu geschrieben.
                                          Wie stelle ich zukünftig diese Subscription her, wenn ich kein externes Skript nutzen soll?

                                        s.bormannS 1 Reply Last reply
                                        0
                                        • B blackeagle998

                                          @s-bormann
                                          Hallo Sebastian, das hört sich super an und ich bin gespannt darauf, das auszuprobieren.
                                          Mir drängen sich aber zwei Fragen auf, wo mir nicht klar ist, wie das zu realisieren ist:

                                          1. Ich baue die HTML Inhalte in Abhängigkeit verschiedener Datenpunkte zusammen. Beispielsweise wird eine Staubsauger Fehlermeldung nur angezeigt, wenn der entsprechende Datenpunkt auch auf Fehler steht.
                                            Ich kann doch keine HTML Datei mit if/then/else erstellen oder?

                                          2. Ich aktualisiere die HTML Erstellung in Abhängigkeit verschiedener Datenpunkte. Ändert sich irgendein Datenpunkt, der für das HTML relevant ist, wird der gesamte HTML Inhalt neu geschrieben.
                                            Wie stelle ich zukünftig diese Subscription her, wenn ich kein externes Skript nutzen soll?

                                          s.bormannS Offline
                                          s.bormannS Offline
                                          s.bormann
                                          Most Active
                                          wrote on last edited by
                                          #3371

                                          @blackeagle998 sagte in Test Adapter iQontrol 1.3.x:

                                          @s-bormann
                                          Hallo Sebastian, das hört sich super an und ich bin gespannt darauf, das auszuprobieren.
                                          Mir drängen sich aber zwei Fragen auf, wo mir nicht klar ist, wie das zu realisieren ist:

                                          1. Ich baue die HTML Inhalte in Abhängigkeit verschiedener Datenpunkte zusammen. Beispielsweise wird eine Staubsauger Fehlermeldung nur angezeigt, wenn der entsprechende Datenpunkt auch auf Fehler steht.
                                            Ich kann doch keine HTML Datei mit if/then/else erstellen oder?

                                          2. Ich aktualisiere die HTML Erstellung in Abhängigkeit verschiedener Datenpunkte. Ändert sich irgendein Datenpunkt, der für das HTML relevant ist, wird der gesamte HTML Inhalt neu geschrieben.
                                            Wie stelle ich zukünftig diese Subscription her, wenn ich kein externes Skript nutzen soll?

                                          Man nutzt dynamische Bereiche auf der Seite. Z.b. mit <div id="Nachricht"></div> und/oder analog mit <span id="mySpan"></span>-Tags.

                                          Im javascript-Teil bespielt man die dann mit Inhalten, z.B. mit document.getElementById('Nachricht').innerHTML = "<h1>Irgendwas</h1><br>Text"

                                          Abhängig von den Widget-Datenpunkten geht das dann mit der postMessage-Kommunikation z.B. so:

                                          <script type="text/javascript">    
                                          	//send postMessages
                                          	function sendPostMessage(command, stateId, value){
                                          		message = { command: command, stateId: stateId, value: value };
                                          		window.parent.postMessage(message, "*");
                                          	}
                                          
                                          	//receive postMessages
                                          	window.addEventListener("message", receivePostMessage, false);
                                          	function receivePostMessage(event) { //event = {data: message data, origin: url of origin, source: id of sending element}
                                          		if(event.data && event.data.command) switch(event.data.command){
                                          			case "getState":
                                          				if(event.data.stateId && event.data.value) switch(event.data.stateId){
                                          					case "Testwidget.MESSAGE":
                                          						document.getElementById('Nachricht').innerHTML = "<b>Nachricht erhalten:</b> " + JSON.stringify(event.data.value);
                                          					break;
                                          					
                                          					case "Testwidget.ANOTHER_DATAPONT":
                                          						if(event.data.value == "Hallo")
                                          							document.getElementById('mySpan').innerHTML = "Es wurde Hallo gesagt <img src='smiley.png'>";
                                          						} else {
                                          							document.getElementById('mySpan').innerHTML = "Keiner grüßt mehr ordentlich <img src='sad.png'>";
                                          						}
                                          					break;
                                          				}
                                          			break;
                                          		}
                                          	}
                                          	
                                          	//Subscribe to WidgetDatapoints now
                                          	sendPostMessage("getWidgetStateSubscribed", "Testwidget.MESSAGE");
                                          	sendPostMessage("getWidgetStateSubscribed", "Testwidget.ANOTHER_DATAPONT");
                                          </script>
                                          

                                          Auf Grund der Uhrzeit habe ich es nicht mehr testen können, aber zumindest so in der Art muss es gehen.
                                          LG

                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          366

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe