Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Script Hilfe: Pushover bei Variablen Wechsel

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Script Hilfe: Pushover bei Variablen Wechsel

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

      Hallo zusammen,

      ich habe in der Wohnung eine Anzeige einer Variable, ob ich die Waschmachiene läuft oder nicht.

      Kann mir einer eine Script bauen, wenn ein Wert von True auf false wechselt, dass dan eine Pushover Info raus geht?

      Danke im voraus

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

        Versuche mal:

        var idWaschmaschine = "hm-rega.0.5541"/*Waschmaschine*/; // anpassen!!!
        
        on({id:idWaschmaschine,change:'ne'}, function (obj) {
            if (obj.state.val) {
                sendTo("pushover", "Waschmaschine ist an");
            } else {
                sendTo("pushover", "Waschmaschine ist aus");
            }
        });
        
        

        Ein paar Infos mehr wären gut:

        • die ID Deiner Variable

        • welche Werte kann Deine Variable annehmen

        Ansonsten könnte es so schon funktionieren, wenn Du die ID anpasst.

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

          oder so:

          var idWaschmaschine = "hm-rega.0.5541"/*Waschmaschine*/; // anpassen!!!
          
          on({id:idWaschmaschine, change:'ne', val: false}, function () {
              sendTo("pushover", "Waschmaschine ist aus");
          });
          
          
          1 Reply Last reply Reply Quote 0
          • D
            DiJaexxl last edited by

            Hallo,

            der Datenpunkt lautet:

            "hm-rega.0.5809"/Waschküche/

            Der Wert lautet "True" wenn die Waschmaschine läuft, und "False" wenn Sie dann fertig ist.

            Ich werde einmal das Script vom Paul testen.

            DANKE

            1 Reply Last reply Reply Quote 0
            • D
              DiJaexxl last edited by

              Hallo zusammen,

              Es klappt. Sagen wir so, es macht was ich angefragt habe.

              var idWaschmaschine = "hm-rega.0.5809"/*Waschküche*/
              
              on({id:idWaschmaschine, change:'ne', val: false}, function () {
                  sendTo("pushover", "Waschmaschine / Trokner ist fertig");
              });
              

              Aber jetzt kommt die Meldung immer, auch wenn die Waschmaschine nur eine Pause macht.

              Wie bau ich da noch eine 3 min Pause ein. Dh, wenn der Status "False" mindestens 3 Minuten ansteht, wird die Info verschickt.

              1 Reply Last reply Reply Quote 0
              • S
                Solear last edited by

                @DiJaexxl:

                Wie bau ich da noch eine 3 min Pause ein. Dh, wenn der Status "False" mindestens 3 Minuten ansteht, wird die Info verschickt. `

                var idWaschmaschine = "hm-rega.0.5809"/*Waschküche*/
                
                on({id:idWaschmaschine, change:'ne', val: false}, function () {	// wenn von true auf false wechselt, rufe warte-Funktion auf
                    warten();  
                    });
                
                function warten() {                      
                    setTimeout(waittime, 3 * 60000);    // Warteschleife, 3 * 1 Minute und rufe dann waittime auf
                }
                
                function waittime() {                       // Nach der Warteschleife, prüfe ob noch false und sende dann
                    var waschmaschine = getState(idWaschmaschine).val;
                    if (waschmaschine === false) sendTo("pushover", "Waschmaschine / Trockner ist fertig"); 
                }
                
                

                Könnte so klappen. Wenn der Wechsel von true auf false erfolgt und es genau 3 Minuten später noch false ist dann Pushovernachricht. Aber ich vermute dann kommen trotzdem 2-3 Nachrichten am Ende durch.

                Ich würde den Ansatz anders machen: die idWaschmaschine schon auf den echten Waschmaschinenstatus setzen, also diese Variable, wo auch immer die erzeugt wird, so einstellen dass sie erst auf false springt wenn 3 Minuten kein Stromverbrauch, und dann das Script von Paul nehmen. .

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

                  @DiJaexxl:

                  Wie bau ich da noch eine 3 min Pause ein. `

                  var idWaschmaschine = "hm-rega.0.5809"/*Waschküche*/;
                  var timer = null;
                  
                  on(idWaschmaschine, function (dp) { // bei Änderung auslösen
                  	if(timer) clearTimeout(timer);   // Stopp Timer
                  	if(!dp.state.val) {              // Änderung von true auf false
                  		timer = setTimeout(function() {
                      			sendTo("pushover", "Waschmaschine / Trockner ist fertig");
                      	}, 3 * 60000);               // 3 Minuten Verzögerung
                      }
                  });
                  

                  EDIT: Kommentare hinzugefügt

                  1 Reply Last reply Reply Quote 0
                  • D
                    DiJaexxl last edited by

                    Hallo Solear,

                    eigentlich hast du Recht.

                    Da ich dieses Variable auch noch auf dem Display im Flur anzeige, sollte ich die Variable patchen.

                    Mir ist das hin und her wechseln der Anzeige in der Vergangenheit nie aufgefallen 8-). Wieder ein Fehler beseitigt.

                    Ich erzeuge die Variable in der CCU2. (Das bekomme ich recht leicht hin). Da habe ich jetzt eine Verzögerung eingesetzt.

                    Danke.

                    Aber auch an Paul Danke. Ich denke ich werde das Script noch an vielen anderen Stellen nutzen!!!

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    1.2k
                    Online

                    31.7k
                    Users

                    79.7k
                    Topics

                    1.3m
                    Posts

                    4
                    8
                    1812
                    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