Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • s.bormann
      s.bormann Most Active @mikweb last edited by s.bormann

      @mikweb sagte in Test Adapter iQontrol 1.5.x:

      @s-bormann
      Wie funktioniert das? Irgendwie habe ich das nicht verstanden, es klappt nicht bei Mir🕵️‍♂️
      Glow-Effekt meinte ich

      In der Gerätekonfiguration gibt es drei neue Datenpunkte:
      GLOW_ACTIVE_COLOR, GLOW_INACTIVE_COLOR und GLOW_HIDE.

      Bei den ersten beiden kann man eine Farbe angeben, die dann als Glow-Effekt dargestellt wird (je nach dem, ob das Gerät aktiv oder eben inaktiv ist). Mögliche Werte sind alle HTML-Kompatiblen Farbwerte, also z.B. "red", "#FF0000" etc.

      Wenn keine Farbe angegeben wird (also das Feld leer ist), wird der Glow-Effekt wieder entfernt.

      Die Farbe kann entweder als Konstante angegeben werden, oder aus einem Datenpunkt geholt werden (linked State), dann hat man z.B. über Blockly die Möglichkeit, die Farbe während der Laufzeit zu ändern.

      Alternativ kann man die Farbe bei RGB-Lampen auch aus HUE und SATURATION generieren lassen (dazu gibt es eine Option).

      Möchte man z.B. per Blockly den Glow-Effekt an- und ausschalten, kann man den Datenpunkt GLOW_HIDE verwenden (dieser kann auch per Option invertiert werden, so dass bei true Glow-Effekt ein- und bei false ausgeblendet wird).

      M 1 Reply Last reply Reply Quote 0
      • M
        mikweb @s.bormann last edited by

        @s-bormann said in Test Adapter iQontrol 1.5.x:

        @mikweb sagte in Test Adapter iQontrol 1.5.x:

        @s-bormann
        Wie funktioniert das? Irgendwie habe ich das nicht verstanden, es klappt nicht bei Mir🕵️‍♂️
        Glow-Effekt meinte ich

        In der Gerätekonfiguration gibt es drei neue Datenpunkte:
        GLOW_ACTIVE_COLOR, GLOW_INACTIVE_COLOR und GLOW_HIDE.

        Bei den ersten beiden kann man eine Farbe angeben, die dann als Glow-Effekt dargestellt wird (je nach dem, ob das Gerät aktiv oder eben inaktiv ist). Mögliche Werte sind alle HTML-Kompatiblen Farbwerte, also z.B. "red", "#FF0000" etc.

        Wenn keine Farbe angegeben wird (also das Feld leer ist), wird der Glow-Effekt wieder entfernt.

        Die Farbe kann entweder als Konstante angegeben werden, oder aus einem Datenpunkt geholt werden (linked State), dann hat man z.B. über Blockly die Möglichkeit, die Farbe während der Laufzeit zu ändern.

        Alternativ kann man die Farbe bei RGB-Lampen auch aus HUE und SATURATION generieren lassen (dazu gibt es eine Option).

        Möchte man z.B. per Blockly den Glow-Effekt an- und ausschalten, kann man den Datenpunkt GLOW_HIDE verwenden (dieser kann auch per Option invertiert werden, so dass bei true Glow-Effekt ein- und bei false ausgeblendet wird).

        👍

        1 Reply Last reply Reply Quote 0
        • K
          Kueppert last edited by

          ALL: gibt es eigentlich die Möglichkeit, dass durch den Klick auf meine Sprit-Kachel nicht die kleine weiße Leiste aufgeht, sondern direkt der Chart?
          Hab Gerätetyp "Wert" genommen, den Spritpreis vom Tankerkönig als "State" und den eChart bei "Background_URL" hinterlegt
          iQontrol-Spritpreis.gif

          dslraser 1 Reply Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active @Kueppert last edited by dslraser

            @kueppert sagte in Test Adapter iQontrol 1.5.x:

            ALL: gibt es eigentlich die Möglichkeit, dass durch den Klick auf meine Sprit-Kachel nicht die kleine weiße Leiste aufgeht, sondern direkt der Chart?
            Hab Gerätetyp "Wert" genommen, den Spritpreis vom Tankerkönig als "State" und den eChart bei "Background_URL" hinterlegt

            Ich denke es wird wie immer verschiedene Wege geben, aber alle Einstellungen zu zeigen und zu schreiben ist sehr Mühsam.🤔
            Ich habe mal mit anderen Werten und Datenpunkten rumgespielt, weil ich keine Charts habe...Aber meinst Du so, vom Prinzip her ?

            20210127_120920.gif

            Vielleicht mal kurz mit Teamviewer oder anydesk ?

            K 2 Replies Last reply Reply Quote 1
            • K
              Kueppert @dslraser last edited by Kueppert

              @dslraser jaaa, genau. Ich will das 1X1-Widget haben um direkt den Spritpreis zu sehen. Beim Klick auf das Widget soll nicht der State angezeigt werden, sondern das Widget sich maximieren und mir den Inhalt (bei mir Chart) anzeigen, dass ich in der URL hinterlegt habe.

              PS: Ich lade gerade mal Teamviewer runter, den kenne ich 😉

              1 Reply Last reply Reply Quote 0
              • K
                Kueppert @dslraser last edited by

                @dslraser vielen Dank für die Hilfe via Teamviewer 😄

                M 1 Reply Last reply Reply Quote 1
                • K
                  Kueppert last edited by

                  @s-bormann kannst du mir ggf mitteilen, ob die Felder Info_A und Badge eine Beschränkung der Länge von Zahlen haben? Ich möchte da gern meinen Spritpreis stehen haben, die Zahl wird aber auf 1 NKS gerundet. Ich kann mich auf den Kopf stellen und meinen Namen hüpfen...der Spritpreis mit 2 NKS wird mir nicht ausgegeben ^^
                  c48aeb00-b5f5-4541-9dbf-d5e1cdbc7cf4-image.png

                  dslraser s.bormann 2 Replies Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active @Kueppert last edited by

                    @kueppert
                    Das liegt am Format...(zeig mal den RAW von dem DP) Das ist wahrscheinlich eine Zahl mit Punkt...Als Text würde es angezeigt werden. Zur Not erstellst Du Dir einen Alias der die Zahl in Text umwandelt.

                    Bildschirmfoto 2021-01-27 um 16.06.45.png

                    K 1 Reply Last reply Reply Quote 0
                    • K
                      Kueppert @dslraser last edited by

                      @dslraser jup, ist ne Zahl mit Punkt...dann mache ich mir mal nen Alias. Danke 🙂

                      dslraser F 2 Replies Last reply Reply Quote 0
                      • dslraser
                        dslraser Forum Testing Most Active @Kueppert last edited by

                        @kueppert sagte in Test Adapter iQontrol 1.5.x:

                        @dslraser jup, ist ne Zahl mit Punkt...dann mache ich mir mal nen Alias. Danke 🙂

                        Hier hatte ich mal sowas (alias) für Temperaturen benutzt

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

                        K 1 Reply Last reply Reply Quote 1
                        • K
                          Kueppert @dslraser last edited by

                          @dslraser sehr sehr schön. Ich erweitere meine Doku um immer mehr Konvertierungen 🙂 Hab nur auf 2 NKS erweitert: read = "val.toFixed(2).replace('.',',')"

                          dslraser 1 Reply Last reply Reply Quote 1
                          • dslraser
                            dslraser Forum Testing Most Active @Kueppert last edited by

                            @kueppert
                            Nur daran denken das es dann Text ist und keine Zahl mehr. Mit einer Zahl könntest Du etwas berechnen, mit Text nicht. Also sowas nur zur Anzeige benutzen und nicht um mit dem Wert etwas zu berechnen.

                            K 1 Reply Last reply Reply Quote 1
                            • K
                              Kueppert @dslraser last edited by

                              @dslraser irgendwas stimmt da nicht...

                              javascript.0	2021-01-27 16:59:15.965	error	(17209) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
                              web.0	2021-01-27 16:59:15.962	error	(556) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
                              admin.0	2021-01-27 16:59:15.906	error	(16712) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
                              javascript.0	2021-01-27 16:59:15.904	error	(17209) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
                              web.0	2021-01-27 16:59:15.898	error	(556) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
                              

                              Habs...im Tankerkönig ist der Preis bereits eine Zeichenkette. Die kann ich leider nicht mit val.tofixed konvertieren...

                              RAW:

                              {
                                "from": "system.adapter.tankerkoenig.0",
                                "ts": 1611763152474,
                                "user": "system.user.admin",
                                "common": {
                                  "name": "diesel short",
                                  "desc": "Preis Diesel (e.ee) zwei Dezimalstellen (nicht gerundet)",
                                  "type": "string",
                                  "role": "value",
                                  "read": true,
                                  "write": false,
                                  "custom": {
                                    "sql.0": {
                                      "enabled": true,
                                      "changesOnly": true,
                                      "debounce": "10000",
                                      "maxLength": 10,
                                      "retention": 0,
                                      "changesRelogInterval": 0,
                                      "changesMinDelta": 0,
                                      "storageType": "",
                                      "aliasId": "",
                                      "counter": false
                                    }
                                  }
                                },
                                "native": {},
                                "acl": {
                                  "object": 1636,
                                  "owner": "system.user.admin",
                                  "ownerGroup": "system.group.administrator",
                                  "state": 1636
                                },
                                "_id": "tankerkoenig.0.stations.1.diesel.short",
                                "type": "state"
                              }
                              
                              dslraser 2 Replies Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active @Kueppert last edited by dslraser

                                @kueppert
                                Du hast ja die Antwort im anderen Beitrag schon bekommen, geht es damit ? (deswegen wollte ich auch den RAW sehen 😀)

                                K 1 Reply Last reply Reply Quote 0
                                • K
                                  Kueppert @dslraser last edited by Kueppert

                                  @dslraser YEEES, endlich...iQontrol will also keinen Text mit Punkt, sondern nen Text mit Komma ^^
                                  4dd76a3e-88b6-45aa-971d-f1b69d8d46c1-image.png

                                  das Alias-Skript für die Konvertierung vom Tankerkönig-Feed sieht bei mir wie folgt aus:

                                  ///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen
                                  ///VAR-Konvertierung: https://forum.iobroker.net/topic/33747/alias-best-practices-wie-kann-man-es-besser-machen/39
                                  
                                  // Original-Datenpunkt
                                  const idOrigin = 'tankerkoenig.0.stations.1.diesel.short'/*diesel short*/;
                                  
                                   
                                  // Alias-Datenpunkt
                                  const idAlias = 'Spritpreise.ESSODiesel';
                                  var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom;
                                  // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
                                  nameAlias = 'ESSODiesel';
                                  // desc = 'per Script erstellt';
                                  typeAlias = 'string'; // 'boolean' oder 'number' oder 'switch' oder 'state' oder 'string'
                                  read = "val.replace('.', ',')"; // Erkennung "Aus" --> false erfolgt automatisch  
                                  // write = "val ? 'Ein' : 'Aus'";
                                  // role = 'indicator.lowbat'; // 'switch.light' oder 'value.temperature' oder 'window.value' oder 'indicator.lowbat'
                                  // min = 0; // nur Zahlen
                                  // max = 100; // nur Zahlen
                                  unit = '€'; // nur für Zahlen, z.B. '%' oder '°C' oder ' ' wenn keine Unit!
                                  // states = {true: 'leer', false: 'voll'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                                  custom = []; // verhindert doppelte Ausführung von history, telegram, mqtt-client, ...
                                   
                                  function createAlias(idSrc, idDst) {
                                     if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
                                     else {
                                        var obj = {};
                                        obj.type = 'state';
                                        obj.common = getObject(idSrc).common;
                                        obj.common.alias = {};
                                        obj.common.alias.id = idSrc;
                                        if(typeAlias) obj.common.type = typeAlias;
                                        if(obj.common.read !== false && read) obj.common.alias.read = read;
                                        if(obj.common.write !== false && write) obj.common.alias.write = write;
                                        if(nameAlias) obj.common.name = nameAlias;
                                        if(role) obj.common.role = role;
                                        if(desc) obj.common.desc = desc;
                                        if(min !== undefined) obj.common.min = min;
                                        if(max !== undefined) obj.common.max = max;
                                        if(unit) obj.common.unit = unit;
                                        if(states) obj.common.states = states;
                                        if(custom && obj.common.custom) obj.common.custom = custom;
                                        if(obj.common.icon) delete obj.common.icon;
                                        obj.native = {};
                                        setObject(idDst, obj);
                                     } 
                                  }
                                   
                                  createAlias(idOrigin, 'alias.0.' + idAlias);
                                  
                                  dslraser 2 Replies Last reply Reply Quote 1
                                  • dslraser
                                    dslraser Forum Testing Most Active @Kueppert last edited by

                                    @kueppert sagte in Test Adapter iQontrol 1.5.x:

                                    YEEES, endlich...iQontrol will also keinen Text mit Punkt, sondern nen Text mit Komma ^^

                                    Jupp, sieht so aus. Aber gut das es geht. Schreibe bitte für die Nachwelt noch in Deinen Beitrag wie Du den alias eingestellt hast, am Besten das ganze alias Script mit den passenden Einstellungen.

                                    1 Reply Last reply Reply Quote 2
                                    • dslraser
                                      dslraser Forum Testing Most Active @Kueppert last edited by dslraser

                                      @kueppert sagte in Test Adapter iQontrol 1.5.x:

                                      Habs...im Tankerkönig ist der Preis bereits eine Zeichenkette. Die kann ich leider nicht mit val.tofixed konvertieren...

                                      ich habe mir eben mal Tankerkönig wieder installiert (hatte ich schon mal)
                                      Noch zur Info was der Adapter für Datenpunkte zur Verfügung stellt (etwas verwirrend 🙄 )

                                      Der feed Datenpunkt ist übrigens number

                                      {
                                       "_id": "tankerkoenig.0.stations.0.diesel.feed",
                                       "type": "state",
                                       "common": {
                                         "name": "diesel  feed",
                                         "desc": "Preis Diesel (e.eee) wie im Feed",
                                         "type": "number",
                                         "unit": "€",
                                         "role": "value",
                                         "read": true,
                                         "write": false
                                       },
                                       "native": {},
                                       "from": "system.adapter.tankerkoenig.0",
                                       "ts": 1611770936040,
                                       "acl": {
                                         "object": 1636,
                                         "state": 1636,
                                         "owner": "system.user.admin",
                                         "ownerGroup": "system.group.administrator"
                                       },
                                       "user": "system.user.admin"
                                      }
                                      

                                      und der short Datenpunkt ist string

                                      {
                                       "_id": "tankerkoenig.0.stations.0.diesel.short",
                                       "type": "state",
                                       "common": {
                                         "name": "diesel short",
                                         "desc": "Preis Diesel (e.ee) zwei Dezimalstellen (nicht gerundet)",
                                         "type": "string",
                                         "role": "value",
                                         "read": true,
                                         "write": false
                                       },
                                       "native": {},
                                       "from": "system.adapter.tankerkoenig.0",
                                       "ts": 1611770936047,
                                       "acl": {
                                         "object": 1636,
                                         "state": 1636,
                                         "owner": "system.user.admin",
                                         "ownerGroup": "system.group.administrator"
                                       },
                                       "user": "system.user.admin"
                                      }
                                      

                                      1 Reply Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active @Kueppert last edited by dslraser

                                        @kueppert

                                        Noch was zu den iQontrol Einstellungen. Hier kannst Du es z.B. so machen, dann wird gleich der Name der Tanke den Du im Tankerkönig Adapter vergeben hast in die iQontrol Kachel übernommen. (Also die Verlinkung zum Datenpunkt)

                                        Bildschirmfoto 2021-01-27 um 19.42.30.png

                                        Tanke|{tankerkoenig.0.stations.0.name}

                                        sieht dann so aus (ich habe noch keinen alias erstellt, deswegen noch die Punktanzeige)

                                        Bildschirmfoto 2021-01-27 um 19.39.55.png


                                        Bildschirmfoto 2021-01-27 um 19.51.15.png

                                        Edit: diese Art der "Namensvergabe" hat auch den Vorteil, wenn Du mal den Namen der Tanke im Adapter änderst, dann wir der in der iQontrol Kachel direkt übernommen und Du kannst/musst den dort nicht auch noch ändern.
                                        Wenn es sinnvolle Namen gibt, denn geht das ja auch mit anderen Adaptern, oder mit alias.

                                        K 2 Replies Last reply Reply Quote 1
                                        • K
                                          Kueppert @dslraser last edited by

                                          @dslraser sagte in Test Adapter iQontrol 1.5.x:

                                          Tanke|{tankerkoenig.0.stations.0.name}

                                          sehr cool, hab ich direkt auch mal mit übernommen 🙂
                                          eb81a00a-475d-4861-860c-12a197381882-image.png

                                          M 1 Reply Last reply Reply Quote 1
                                          • M
                                            martinschm @Kueppert last edited by

                                            @s-bormann : Wenn ich die Option "Mauszeiger Events ignorieren wenn das Gerät aktiv ist" aktiviere um den Zoom Effekt des Icons zu verhindern, dann lässt sich das Icon auch nicht mehr zum Klicken verwenden.

                                            Ist das so richtig?
                                            Ich muß dann die Option aktiviere das die ganze Kachel ein Klick ist.

                                            Bei einer einfachen Lampe ok, aber wenn ich mehr Optionen hab kann ich das Gerät dann nur noch über den Dialog schalten und gar nicht mehr das Icon als Shortcut nutzen und die Kachel nur für die erweiterten Optionen, was schade wäre.

                                            M dslraser s.bormann 4 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            539
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            app dark-mode iqontrol responsive vis visualisierung visualization widget
                                            295
                                            7633
                                            5513876
                                            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