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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active @kilasat last edited by

      @kilasat sagte in [Neuer Adapter] Visualisierung iQontrol:

      Wie mache ich das am besten?

      Mach Dir doch ein kleines Blockly/Script welches Deine Fenster nach Räumen/Anzahl auswertet. Das Ergebnis kannst Du ja dann auf Deiner gewünschten Kachel anzeigen lassen.

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

        @dslraser also meinst Du dann einen eigenen Datepunkt erstellen und dann prüfen falls alle Fenster geschlossen dann DP auf true und falls noch welche geöffnet dann auf false.

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

          @kilasat
          nein, ich meine sowas in der Art (ist etwas länger und schickt das Ergebnis an Telegram. Die Ergebnisse könnte man ja auch in eigene Datenpunkte schreiben und die dann für iQontrol benutzen.

          Bildschirmfoto 2019-07-16 um 11.00.53.png

          Ergebnis z.B.:

          Screenshot_20190716-112105_Telegram.jpg

          Oder das bekannte Fenster zählen Script aus dem Forum. (sollte in der Suche zu finden sein)

          BBTown K 3 Replies Last reply Reply Quote 1
          • dslraser
            dslraser Forum Testing Most Active @kilasat last edited by dslraser

            @kilasat

            z.B. hier

            Hier für Licht, ist das gleiche Prinzip.
            oder hier findest Du auch einiges

            1 Reply Last reply Reply Quote 1
            • BBTown
              BBTown @dslraser last edited by BBTown

              @dslraser sagte in [Neuer Adapter] Visualisierung iQontrol:

              Oder das bekannte Fenster zählen Script aus dem Forum.

              Genaus so habe ich es umgesetzt.
              Auf meiner Startseite habe ich eine Übersicht ob irgendeine Tür oder irgendein Fenster offen ist
              27959d58-4b17-40cd-a411-6bee95e93960-grafik.png

              Wenn ich auf eine der Kacheln klicke, komme ich auf meine Übersichtsseite:
              ca3c8add-52b9-485c-8ed1-4b3a145607d8-grafik.png

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

                Hallo Zusammen,

                erst mal ein Lob an den Entwickler des Adapter.
                Finde ihn prima und bei mir läuft er auch tadellos.

                Eine Anregung hätte ich allerdings. Es wäre schön wenn man
                invertieren könnte, also aus Ein wird dann Aus.

                Könnte man das umsetzen?

                s.bormann 1 Reply Last reply Reply Quote 0
                • sigi234
                  sigi234 Forum Testing Most Active @kilasat last edited by

                  @kilasat

                  Ich habe es mit einen Skript gemacht und dann als Wert anzeigen:

                  Screenshot (3676).png

                  K 1 Reply Last reply Reply Quote 1
                  • K
                    kilasat @sigi234 last edited by

                    @sigi234 mit welchem script? Das aus dem Forum. Was der dslraser weiter oben gepostet hatte?

                    sigi234 1 Reply Last reply Reply Quote 0
                    • sigi234
                      sigi234 Forum Testing Most Active @kilasat last edited by

                      @kilasat sagte in [Neuer Adapter] Visualisierung iQontrol:

                      @sigi234 mit welchem script? Das aus dem Forum. Was der dslraser weiter oben gepostet hatte?

                      // ######## SKRIPT EINSTELLUNGEN ########
                      
                      var debug = true;
                      
                      
                      // ######### STATES ANLEGEN #########
                      
                      createState('offene_Fenster.Gesamt.offeneFenster', 0);
                      createState('offene_Fenster.Gesamt.Fenster', 0); 
                      createState('offene_Fenster.Gesamt.Text');
                      
                      var cacheSelectorFenster  = $('channel[state.id=*.STATE](functions=Verschluss)');
                      
                      
                      function countFenster(obj) {
                           // Setzt die Zähler vor dem Durchlauf aller Elemente auf 0
                          var anzahlFenster = 0;
                          var anzahlFensterauf = 0;
                          var textFensterauf = [];
                      
                         cacheSelectorFenster.each(function (id, i) {                 // Schleife für jedes gefundenen Element *.STATE im Gewerk Verschluss
                              var status = getState(id).val;                          // Zustand *.STATE abfragen (jedes Element)
                              
                          if(debug) log("Status ist: "+status);
                              
                              var obj    = getObject(id);
                              if (status == 1 || status === true)  {    // wenn Zustand true (HM norm) oder "1" (bei HmIP), dann wird die Anzahl der Fenster hochgezählt
                              ++anzahlFensterauf;
                              textFensterauf.push(obj.common.name);    // Zu Array hinzufügen
                              }                
                         if(debug) log("Fenster Nr. " + i + ": " + getObject(id).common.name + ": " + status);
                              ++anzahlFenster;                                        // Zählt die Anzahl der vorhandenen Fenster unabhängig vom Status
                          }); 
                      
                      
                         setState("offene_Fenster.Gesamt.offeneFenster", anzahlFensterauf);    // Schreibt die aktuelle Anzahl 
                         setState("offene_Fenster.Gesamt.Fenster", anzahlFenster);        // Schreibt die aktuelle Anzahl der vorhandene Elemente
                         setState("offene_Fenster.Gesamt.Text", textFensterauf.join(',<br>'));    // Schreibt die aktuelle Namen   
                      }
                      
                      cacheSelectorFenster.on(function(obj) {    // bei Zustandänderung *. STATE im Gewerk Fenster
                         countFenster(obj);
                      });
                      
                      // START
                      
                      countFenster();
                      
                      K 1 Reply Last reply Reply Quote 1
                      • K
                        kilasat @dslraser last edited by

                        @dslraser cool. Das Script schaue ich mir an.
                        Wäre es möglich, dass du mir das Blockly exportierst?

                        Bzw man sieht nicht wie die Ausgabe genau stattfindet.

                        Danke und Gruss
                        Alex

                        1 Reply Last reply Reply Quote 0
                        • K
                          kilasat @sigi234 last edited by

                          @sigi234

                          Besten Dank. Was muss ich hier noch anpassen damit es läuft? Habe Xiaomi Kontakte.

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

                            @kilasat

                            ich habe mal eben was zusammengesteckt...
                            (ist für meine HMIP Fensterkontakte ohne Unterscheidung ob kipp/auf. Ich schaue hier nur nach offenen Fenstern und der Gesamtanzahl der Fenster) HMIP hat STATE (Großschreibung) und meine Aufzählung (functions) heißt Fenster.

                            Javascript Adapter ist 4.1.14
                            iQontrol ist 0.0.45

                            <xml xmlns="http://www.w3.org/1999/xhtml">
                              <variables>
                                <variable type="" id="GBP*^g/p%y(A!z9wYIAp">Anzahl_Fenster_Gesamt</variable>
                                <variable type="" id=".Yia3JB]R6UM8||#rtEy">offene_Fenster</variable>
                                <variable type="" id="k1V%Om2^GrHwhE.r-Ooe">Fenster</variable>
                              </variables>
                              <block type="procedures_defcustomnoreturn" id="EJhG@Zv:/.r@(DzIU,:6" x="-337" y="-313">
                                <mutation statements="false"></mutation>
                                <field name="NAME">Datenpunkte_erstellen</field>
                                <field name="SCRIPT">Ly9EYXRlbnB1bmt0IEFuemFobCBGZW5zdGVyIGdlc2FtdApjcmVhdGVTdGF0ZSgiRWlnZW5lX0RhdGVucHVua3RlLjE0RmVuc3Rlci5GZW5zdGVyX0FuemFobF9nZXNhbXQiLCcwJywgewogICAgbmFtZTogJ0ZlbnN0ZXJfQW56YWhsX2dlc2FtdCcsIAogICAgdHlwZTogJ251bWJlcicsIAogICAgcmVhZDogIHRydWUsIAogICAgd3JpdGU6IGZhbHNlLAp9KTsKLy9EYXRlbnB1bmt0IEFuemFobCBGZW5zdGVyIG9mZmVuCmNyZWF0ZVN0YXRlKCJFaWdlbmVfRGF0ZW5wdW5rdGUuMTRGZW5zdGVyLkZlbnN0ZXJfQW56YWhsX29mZmVuIiwnMCcsIHsKICAgIG5hbWU6ICdGZW5zdGVyX0FuemFobF9vZmZlbicsCiAgICB0eXBlOiAnbnVtYmVyJywgCiAgICByZWFkOiAgdHJ1ZSwgCiAgICB3cml0ZTogZmFsc2UsCn0pOw==</field>
                                <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                              </block>
                              <block type="procedures_callcustomnoreturn" id="X+4?!FV=R(MUJl~Yi2L." x="-338" y="-262">
                                <mutation name="Datenpunkte_erstellen"></mutation>
                                <next>
                                  <block type="on_ext" id="V1kpsdPQC:|sufssEQ*z">
                                    <mutation items="1"></mutation>
                                    <field name="CONDITION">ne</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid" id="#4w([E@;X_!loV@[Dy]:">
                                        <field name="oid">default</field>
                                      </shadow>
                                      <block type="selector" id="?)@(:rQgwvNK-P2_ANwr">
                                        <field name="TEXT">channel[state.id=STATE](functions='Fenster')</field>
                                      </block>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="variables_set" id="qa97CpeWKQ%uN2N-R|r,">
                                        <field name="VAR" id="GBP*^g/p%y(A!z9wYIAp" variabletype="">Anzahl_Fenster_Gesamt</field>
                                        <value name="VALUE">
                                          <block type="math_number" id="6(KoRd0Q#{nzJM3dX62)">
                                            <field name="NUM">0</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="variables_set" id="hd@3RL`}?+y^=cZX*kfB">
                                            <field name="VAR" id=".Yia3JB]R6UM8||#rtEy" variabletype="">offene_Fenster</field>
                                            <value name="VALUE">
                                              <block type="math_number" id="FyhKfYo#Cn@M)jG/qfhC">
                                                <field name="NUM">0</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="controls_forEach" id=".m+JeoExV[1]:#qZCzBq">
                                                <field name="VAR" id="k1V%Om2^GrHwhE.r-Ooe" variabletype="">Fenster</field>
                                                <value name="LIST">
                                                  <block type="selector" id="]=0?,b+1!^B3f.Qx7{zl">
                                                    <field name="TEXT">channel[state.id=STATE](functions='Fenster')</field>
                                                  </block>
                                                </value>
                                                <statement name="DO">
                                                  <block type="math_change" id="w-AGl|nLX9gm8g(ZNQhz">
                                                    <field name="VAR" id="GBP*^g/p%y(A!z9wYIAp" variabletype="">Anzahl_Fenster_Gesamt</field>
                                                    <value name="DELTA">
                                                      <shadow type="math_number" id="MR[}3[zrLeXB1v0X;wSm">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="controls_if" id="kFe#]pQ7akH6[,!wu4,8">
                                                        <value name="IF0">
                                                          <block type="logic_compare" id=".9mBUt}8pUY02GvL+1rX">
                                                            <field name="OP">GT</field>
                                                            <value name="A">
                                                              <block type="get_value_var" id="O6YMOK$=G[k/s}#h[F(y">
                                                                <field name="ATTR">val</field>
                                                                <value name="OID">
                                                                  <shadow type="text" id="H+Si!dLFm_55HjmGoqp+">
                                                                    <field name="TEXT"></field>
                                                                  </shadow>
                                                                  <block type="variables_get" id="*r*n~D4DFTcmV^IQ]ak~">
                                                                    <field name="VAR" id="k1V%Om2^GrHwhE.r-Ooe" variabletype="">Fenster</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="math_number" id="%@9u.Wel0{9lZsIubw52">
                                                                <field name="NUM">0</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="math_change" id="/{nU_fYTJAjqq;iPylsx">
                                                            <field name="VAR" id=".Yia3JB]R6UM8||#rtEy" variabletype="">offene_Fenster</field>
                                                            <value name="DELTA">
                                                              <shadow type="math_number" id="$5[-hLU3]|W5Iq9-k*Fx">
                                                                <field name="NUM">1</field>
                                                              </shadow>
                                                            </value>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                                <next>
                                                  <block type="update" id="TGU9Lp,C0O-et)3!wE0T">
                                                    <mutation delay_input="false"></mutation>
                                                    <field name="OID">javascript.0.Eigene_Datenpunkte.14Fenster.Fenster_Anzahl_gesamt</field>
                                                    <field name="WITH_DELAY">FALSE</field>
                                                    <value name="VALUE">
                                                      <block type="variables_get" id="LDD}d$t@L!$Hl?^(._6u">
                                                        <field name="VAR" id="GBP*^g/p%y(A!z9wYIAp" variabletype="">Anzahl_Fenster_Gesamt</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="update" id="cp36p9J_H=MvrYz(K0;q">
                                                        <mutation delay_input="false"></mutation>
                                                        <field name="OID">javascript.0.Eigene_Datenpunkte.14Fenster.Fenster_Anzahl_offen</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE">
                                                          <block type="variables_get" id="95h*1t+vKZs6mraN20Ht">
                                                            <field name="VAR" id=".Yia3JB]R6UM8||#rtEy" variabletype="">offene_Fenster</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </xml>
                            

                            Bildschirmfoto 2019-07-16 um 14.28.45.png

                            Diese beiden Datenpunkte werden bei mir angelegt.

                            Bildschirmfoto 2019-07-16 um 14.28.14.png

                            in iQontrol habe ich es dann so eingefügt

                            Bildschirmfoto 2019-07-16 um 14.33.50.png

                            Bildschirmfoto 2019-07-16 um 14.34.08.png

                            Bildschirmfoto 2019-07-16 um 14.34.18.png

                            Sieht dann so aus

                            2019-07-16 14.35.47.jpg

                            2019-07-16 14.35.58.jpg

                            Ein weiterer Klick öffnet die Seite mit allen Fenstern

                            2019-07-16 14.37.43.jpg

                            K 3 Replies Last reply Reply Quote 2
                            • K
                              kilasat @dslraser last edited by

                              @dslraser ich habe es noch nicht im Detail anschauen können. Aber ich bedanke mich bereits sehr für die Unterstützung.

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

                                @dslraser

                                12a1867b-694e-43b3-a27a-8d9d7d787525-image.png

                                Ich weiss nicht warum es die Anzahl der Fenster nicht zählt. Habe eigentlich alles angepasst.

                                000486a6-49f3-49de-beee-0afb617fe041-image.png

                                b38ab54d-c438-4332-8ed4-ed9125763cb5-image.png

                                8448ccea-c986-41d6-827c-d20744f7cb00-image.png

                                JS Adapter neu gestartet.

                                BBTown 1 Reply Last reply Reply Quote 0
                                • BBTown
                                  BBTown @kilasat last edited by

                                  @kilasat hast Du im Blockly bei den unteren beiden Einträgen auch noch einmal "Fenster_Anzahl_gesamt" und "Fenster_Anzahl_offen" aus den Objektübersicht manuelle rausgesucht?
                                  Dort ist auch ein anderer Pfad hinterlegt

                                  K 1 Reply Last reply Reply Quote 0
                                  • K
                                    kilasat @BBTown last edited by

                                    @BBTown ja das habe ich. Aber ich habe nicht gesehen, dass bei Xiaomi TFK der STATE = state ist.

                                    channelstate.id=state

                                    Habe es angepasst, passiert immer noch nichts. Muss ich zum Triggern ein Fenster öffnen?

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

                                      7c9f5fbd-a2bd-4fb0-a67d-f772aa03f41d-image.png

                                      mit *.state habe ich es schon probiert. Hmm...

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

                                        @kilasat
                                        bei Dir ist Fenster = fenster, oder ? (klein geschrieben--hinten)

                                        bei mir groß
                                        Bildschirmfoto 2019-07-16 um 17.26.34.png

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

                                          @dslraser es war klein. Habs nun auf Gross geändert. Ohne erfolgt.

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

                                            @kilasat
                                            zeig mal ein RAW von einem Fenster

                                            hier HMIP

                                            {
                                              "type": "state",
                                              "common": {
                                                "def": "CLOSED",
                                                "type": "number",
                                                "read": true,
                                                "write": false,
                                                "min": "CLOSED",
                                                "max": "OPEN",
                                                "states": {
                                                  "0": "CLOSED",
                                                  "1": "OPEN"
                                                },
                                                "unit": "\"\"",
                                                "role": "value.window",
                                                "name": "Wohnzimmerfenster links.STATE"
                                              },
                                              "native": {
                                                "MIN": "CLOSED",
                                                "UNIT": "\"\"",
                                                "OPERATIONS": 5,
                                                "MAX": "OPEN",
                                                "FLAGS": 1,
                                                "ID": "STATE",
                                                "TAB_ORDER": 0,
                                                "TYPE": "ENUM",
                                                "DEFAULT": "CLOSED",
                                                "VALUE_LIST": [
                                                  "CLOSED",
                                                  "OPEN"
                                                ],
                                                "CONTROL": "DOOR_SENSOR.STATE"
                                              },
                                              "from": "system.adapter.hm-rega.0",
                                              "user": "system.user.admin",
                                              "ts": 1559315348552,
                                              "_id": "hm-rpc.0.xxx.1.STATE",
                                              "acl": {
                                                "object": 1636,
                                                "state": 1636,
                                                "owner": "system.user.admin",
                                                "ownerGroup": "system.group.administrator"
                                              }
                                            }
                                            
                                            K 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            875
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

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