Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Bild wechsel Garagentor Stellung [gelöst]

    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

    Bild wechsel Garagentor Stellung [gelöst]

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

      Vorschlag:

      const idAuf   = 'hm-rpc.1.xxx.1.STATE';
      const idLueft = 'hm-rpc.1.xxx.2.STATE`;
      const idVis   = 'javascript.0.Tor'; // Datenpunkt für VIS
      
      createState(idVis, 0, {type: 'number', min: 0, max: 2});
      
      var auf = getState(idAuf).val;
      var lueft = getState(idLueft).val;
      
      function tor() {
         var vis = 0;       // Tor zu
         if(lueft) vis = 1; // Lüftung
         if(auf) vis = 2;   // Tor auf
         setState(idVis, vis, true);
      }
      
      tor(); // Skriptstart
      
      on(idAuf, function(dp) {
         auf = dp.state.val;
         tor();
      });
      
      on(idLueft, function(dp) {
         lueft = dp.state.val;
         tor();
      });
      
      
      1 Reply Last reply Reply Quote 0
      • L
        lutzer last edited by

        Ich danke dir.

        Doofe Fragen: wo hin damit? Und welches widget muss ich dafür nehmen?

        Sorry bin wirklich Anfänger

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

          @lutzer:

          wo hin damit? `
          Im Javascript-Adapter ein neues Skript anlegen (unter der Gruppe common) und das Skript aus dem Forum in das Editor-Fenster kopieren (copy & paste).
          @lutzer:

          Und welches widget muss ich dafür nehmen? `
          Mit Vis kenne ich mich nicht aus.

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

            Nimm das Widget und passe es an :

            [{"tpl":"tplMfdDoor","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","asButton":false,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"closed_icon":"/icons-mfd-svg/fts_sliding_gate_l_closed.svg","closed_iconColor":"#29ff33","tilted_icon":"/icons-mfd-svg/fts_sliding_gate.svg","opened_icon":"/icons-mfd-svg/fts_sliding_gate_open.svg","opened_iconColor":"#e60000","invert_icon":false,"invert_state":false,"tilted_iconColor":"#fdbb12"},"style":{"left":"231px","top":"461px","width":"139px","height":"128px"},"widgetSet":"jqui-mfd"}]
            
            1 Reply Last reply Reply Quote 0
            • L
              lutzer last edited by

              Irgendwie wird der Zustand nicht verändert.

              Das sagt die log:

              javascript.0	2018-10-20 19:58:51.255	info	script.js.common.garage: registered 2 subscriptions and 0 schedules
              javascript.0	2018-10-20 19:58:51.255	warn	at script.js.common.garage:17:1
              javascript.0	2018-10-20 19:58:51.255	warn	at tor (script.js.common.garage:14:4)
              javascript.0	2018-10-20 19:58:51.253	warn	State "javascript.0.Tor" not found
              javascript.0	2018-10-20 19:58:51.250	info	Start javascript script.js.common.garage
              

              Ist das so richtig im Vis?
              8604_unbenannt-4.png

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

                @lutzer:

                Mein Garagentor hat drei Stellungen die es auch Zurückmeldet (Zu,Lüftung,Auf). `

                Wohin meldet es den?

                1 Reply Last reply Reply Quote 0
                • L
                  lutzer last edited by

                  Problem ist eben das es zwei verschiedene "Devices" sind. Ist ein "HmIP-MOD-RC8" der auf Kanal 1 und 2 die entsprechenden Rückmeldungen gibt.

                  Hier mal meine IDs/Abhängigkeiten:

                  Tor zu

                  hm-rpc.1.xxx.2.STATE

                  false

                  /vis.0/main/img/garage_zu.png

                  Tor Lüftung

                  hm-rpc.1.xxx.2.STATE

                  true

                  /vis.0/main/img/garage_lueftung.png

                  Tor auf

                  hm-rpc.1.xxx.1.STATE

                  true

                  /vis.0/main/img/garage_auf.png

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

                    Zeig mir mal bitte den Objektbaum…....

                    1 Reply Last reply Reply Quote 0
                    • L
                      lutzer last edited by

                      8604_unbenannt-5.png

                      1 Reply Last reply Reply Quote 0
                      • L
                        lutzer last edited by

                        Ich habe es auch mal als Homematic Programm mit einer Variable getestet. Dauert aber ewig bis die aktuelle Variable im iobroker ankommt.
                        8604_tor-hm.png

                        Ich habe es auch mit Signalbildern geschummelt, aber da kann man ja immer nur einen Teil ersetzen. Signal halt…
                        8604_tor-signalbilder.png

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

                          Na ja du hast ja alle Datenpunkte, warum braucht du dann noch ein Skript?

                          Die DP ändern sich in true oder false wenn du das Garagentor auf oder zu machst?

                          Stoppe mal das Skript und setze vom deinen Objekt den DP in das Widget ein.

                          1 Reply Last reply Reply Quote 0
                          • L
                            lutzer last edited by

                            Weil ich zwei verschiedene Objekt IDs brauche und eine kann man ja nur anwählen.

                            Zu und Lüftung kommt von einem Kanal 2 (true/false), aber Auf kommt von Kanal 1 (true)

                            Tor zu

                            2.STATE = false

                            /vis.0/main/img/garage_zu.png

                            Tor Lüftung

                            2.STATE = true

                            /vis.0/main/img/garage_lueftung.png

                            Tor auf

                            1.STATE = true

                            /vis.0/main/img/garage_auf.png

                            Ein Script könnte mir die Zustände sammeln und dann eben nur noch 0,1,2 ausgeben. Und bei entsprechnder Zahl kann ich dann im Widget ein Bild zuordnen. So dachte ich es mir :?

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

                              Dann leg 2 Widget an, und setze sie übereinander und stelle die Sichtbarkeit ein….........

                              1 Reply Last reply Reply Quote 0
                              • L
                                lutzer last edited by

                                Wenn aus dem Script von Paul tatsächlich Zahlen rauskommen würden, dann könnte ich doch prima mit deinem Widget arbeiten.

                                1 Reply Last reply Reply Quote 0
                                • L
                                  lutzer last edited by

                                  @paul53

                                  Kannst du mir bitte noch sagen wie ich mit dem Script arbeite?

                                  Ich verstehe leider zu wenig von Javascript.

                                  Was erzeugt das "javascript.0.Tor"? Da steht leider immer nur eine 0. - Sorry passt, es erzeugt 0,1,2 - Ich hatte den Haken bei Debug…. :?

                                  1 Reply Last reply Reply Quote 0
                                  • L
                                    lutzer last edited by

                                    Hier noch mal als Zusammenfassung, weil es funktioniert und mit Sicherheit weiterhilft.

                                    Aufgabenstellung:

                                    Mein Garagentor hat drei Stellungen die es auch Zurückmeldet (Zu,Lüftung,Auf).

                                    Es sind zwei verschiedene "Devices": von einem Homematic Sender "HmIP-MOD-RC8" der auf Kanal 1 und 2 die entsprechenden Rückmeldungen

                                    Hier mal meine IDs/Abhängigkeiten:

                                    Tor zu

                                    hm-rpc.1.xxx.2.STATE

                                    false

                                    /vis.0/main/img/garage_zu.png

                                    Tor Lüftung

                                    hm-rpc.1.xxx.2.STATE

                                    true

                                    /vis.0/main/img/garage_lueftung.png

                                    Tor auf

                                    hm-rpc.1.xxx.1.STATE

                                    true

                                    /vis.0/main/img/garage_auf.png

                                    8604_unbenannt-5.png

                                    Ich habe von paul53 folgendes Script bekommen, was unter "Objekte" einen State mit entsprechendem Wert (0,1,2) erzeugt.

                                    Ein neues Script unter Javascript/common erzeugen und folgenden Code einfügen:

                                    const idAuf   = 'hm-rpc.1.xxx.1.STATE';
                                    const idLueft = 'hm-rpc.1.xxx.2.STATE`;
                                    const idVis   = 'javascript.0.Tor'; // Datenpunkt für VIS
                                    
                                    createState(idVis, 0, {type: 'number', min: 0, max: 2});
                                    
                                    var auf = getState(idAuf).val;
                                    var lueft = getState(idLueft).val;
                                    
                                    function tor() {
                                       var vis = 0;       // Tor zu
                                       if(lueft) vis = 1; // Lüftung
                                       if(auf) vis = 2;   // Tor auf
                                       setState(idVis, vis, true);
                                    }
                                    
                                    tor(); // Skriptstart
                                    
                                    on(idAuf, function(dp) {
                                       auf = dp.state.val;
                                       tor();
                                    });
                                    
                                    on(idLueft, function(dp) {
                                       lueft = dp.state.val;
                                       tor();
                                    });
                                    

                                    Nun kann man im Vis folgendes Widget importieren:

                                    Hinweis - vorher "vis-jqui-mfd.0" Adapter installieren, sonst sieht man nichts…

                                    [{"tpl":"tplMfdDoor","data":{"oid":"nothing_selected","g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","asButton":false,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"closed_icon":"/icons-mfd-svg/fts_sliding_gate_l_closed.svg","closed_iconColor":"#29ff33","tilted_icon":"/icons-mfd-svg/fts_sliding_gate.svg","opened_icon":"/icons-mfd-svg/fts_sliding_gate_open.svg","opened_iconColor":"#e60000","invert_icon":false,"invert_state":false,"tilted_iconColor":"#fdbb12"},"style":{"left":"231px","top":"461px","width":"139px","height":"128px"},"widgetSet":"jqui-mfd"}]
                                    

                                    Jetzt die Parameter im widget einstellen:
                                    8604_widget_garage_einstellungen.png

                                    Danke an paul53 und sigi234 für den Support.

                                    Ich denke das ich mit der Zusammenfassung etwas wieder zurück geben kann. Das fällt mir auch immer sehr schwer Beiträge ohne happy end zu lesen. 😉

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

                                      Das freut mich das es geklappt hat…........... 🙂

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

                                        @lutzer:

                                        Zusammenfassung, weil es funktioniert `
                                        Dann markiere bitte das Thema im Betreff des ersten Beitrags als [gelöst].

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        692
                                        Online

                                        31.9k
                                        Users

                                        80.2k
                                        Topics

                                        1.3m
                                        Posts

                                        3
                                        19
                                        1250
                                        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