Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Gelöst: On Change

    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

    Gelöst: On Change

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      michihorn @harrym last edited by michihorn

      @harrym hab die VAR noch mal mit angefügt
      Aktuell ist die Temperatur 30 und SW_Temp 27

      Normalerweise sollte "on({ id: Temperatur, change: 'any' }, function () {" bei Änderung triggern, tut s aber nicht

      harrym 1 Reply Last reply Reply Quote 0
      • harrym
        harrym @michihorn last edited by

        @michihorn du triggerst auf ne variable?

        M 1 Reply Last reply Reply Quote 0
        • M
          michihorn @harrym last edited by

          @harrym das war der Plan. Sobald sich der Wert der VAR ändert soll das Script laufen.

          harrym 1 Reply Last reply Reply Quote 0
          • harrym
            harrym @michihorn last edited by

            @michihorn schreib die variable in nen datenpunkt und trigger dann auf den datenpunkt

            M 1 Reply Last reply Reply Quote 0
            • M
              michihorn @harrym last edited by

              @harrym Ich habe ja extra mit den globalen Variablen experimentiert, so das ich nicht noch weitere DP anlegen muß, denn der DP ist ja über RPC2 angelegt. Um Schreibkram beim Programmieren zu minimieren wollte ich die Globalen Variablen nutzen

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

                @michihorn sagte:

                Um Schreibkram beim Programmieren zu minimieren wollte ich die Globalen Variablen nutzen

                Man kann trotzdem nicht auf einen Wert triggern, sondern nur auf eine ID. Ändere es besser in eine Funktion ids_holen();

                function ids_holen() {
                  let idAußenTemperatur = "hm-rpc.2.00185BE98B3FCA.1.ACTUAL_TEMPERATURE";
                  let idTemperatur ="hm-rpc.0.OEQ0128317.1.TEMPERATURE";  //Wintergarten
                  let idLux = "hm-rpc.2.00185BE98B3FCA.1.ILLUMINATION"; //LUX Wetterstation
                  let idLuxInnen = "hm-rpc.2.000D58A9915658.1.CURRENT_ILLUMINATION"; //LUX 
                  Wintergarten
                  let idRegen = "hm-rpc.2.00185BE98B3FCA.1.RAINING";
                  let idWind = "hm-rpc.2.00185BE98B3FCA.1.WIND_SPEED";
                  let idAnwesenheit = "javascript.0.Anwesenheitssteuerung.Userlist.JemandDa";
                  return {
                    AußenTemperatur: idAußenTemperatur,
                    Temperatur: idTemperatur,
                    Lux: idLux,
                    LuxInnen: idLuxInnen,
                    Regen: idRegen,
                    Anwesenheit: idAnwesenheit,
                    Wind: idWind,
                  };
                }
                
                M 1 Reply Last reply Reply Quote 0
                • M
                  michihorn @paul53 last edited by michihorn

                  @paul53 Und wie nehme ich im entsprechenden Script Bezug auf die Variablen? Genau wie vorher auch?

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

                    @michihorn sagte:

                    Bezug auf die Variablen? Genau wie vorher auch?

                    Ja, nur mit dem Unterschied, dass keine Werte, sondern IDs enthalten sind.

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      michihorn @paul53 last edited by

                      @paul53 sagte in On Change:

                      @michihorn sagte:

                      Bezug auf die Variablen? Genau wie vorher auch?

                      Ja, nur mit dem Unterschied, dass keine Werte, sondern IDs enthalten sind.

                      Danke das hilft mir weiter

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

                        @michihorn
                        Dein Script mit IDs könnte so aussehen:

                        const ids = ids_holen();
                        const idSW_Temp = 'javascript.0.Garten.Markisse.SW_Temp'; // Auslösewert Temp
                        
                        on(ids.Temperatur, function (dp) {
                            if (dp.state.val <= getState(idSW_Temp).val) {
                                log("ist kleiner");
                                setState("javascript.0.Garten.Markisse.Bedingung_2", 0)
                            } else { 
                                setState("javascript.0.Garten.Markisse.Bedingung_2", 1)
                                log("ist größer"); };
                        });
                        
                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        934
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        javascript
                        4
                        15
                        387
                        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