Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst]Skript soll nur EINMAL auslösen: wie?

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    939

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[gelöst]Skript soll nur EINMAL auslösen: wie?

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
7 Beiträge 3 Kommentatoren 841 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Offline
    S Offline
    skorpil
    schrieb am zuletzt editiert von
    #1

    Ich habe mir einen Pushover Alarm angelegt, wen mein Staubsauger "hängt". Hier das Skript:

    // ##################################
    // Deklarationen
    // ##################################
    
    var IDxiaomiFehler ="mihome-vacuum.1.info.error"/*Error*/;
    
    // ##################################
    // Programm
    // ##################################
    
    on({id: IDxiaomiFehler}, function (data) {
    
    var fehlerWert = getState("mihome-vacuum.1.info.error").val;
    
        if (fehlerWert !== 0) {
    
        sendTo("pushover.0", {
            message:  'FEHLER', // mandatory - your text message
            title:    'Xiaomi UNTEN', // optional  - your message's title, otherwise your app's name is used
            sound:    'spacealarm',     // optional  - the name of one of the sounds supported by device clients to override the user's default sound choice
                                      //    pushover, bike, bugle, cashregister, classical, cosmic, falling,
                                      //    gamelan, incoming, intermission, magic, mechanical, pianobar, siren,
                                      //    spacealarm, tugboat, alien, climb, persistent, echo, updown, none
            priority: 1,          // optional
                                      //    -1 to always send as a quiet notification,
                                      //    1 to display as high-priority and bypass the user's quiet hours, or
                                      //    2 to also require confirmation from the user
        });        
    }                          
    });
    

    Soweit, so gut.

    Allerdings löst es jetzt bei jeder Aktualisierung des Objekts "mihome-vacuum.1.info.error" aus, also quasi alle 30 sec. Das soll so aber nicht sein. EINE pushover Information reicht mir.

    Meine Frage: wie löse ich das im Skript, daß ich also nur EINMAL beim ersten Auftritt des Fehlers eine Nachricht erhalte und dann nicht mehr.

    Danke für die Hilfe!

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      pix
      schrieb am zuletzt editiert von
      #2

      Hallo Skorpil,

      Schnell aus der Kaffeepause vom Usertreffen:

      Lass mal var fehlerWert weg und ändere die if Abfrage in

      if (data.state.val !==0 && data.oldState.val ===0) {
      

      Also neuer Wert ist Fehler und alter Wert ist kein Fehler.

      Gruß

      Pix

      ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

      1 Antwort Letzte Antwort
      0
      • DutchmanD Offline
        DutchmanD Offline
        Dutchman
        Developer Most Active Administrators
        schrieb am zuletzt editiert von
        #3

        due loest wohl aus bei any, mach mal:

        on({id: IDxiaomiFehler, , change: "ne"}, function (data)

        dan sollte er es nur bei aenderung machen

        Edit: Pix war schneller :) Nu ausloesen script sollte auch nur bei aenderung variable ?

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          skorpil
          schrieb am zuletzt editiert von
          #4

          Pix, schneller als der Schall! Vielen Dank! Und, Gruß an alle Beim Usertreffen[emoji23]

          1 Antwort Letzte Antwort
          0
          • P Offline
            P Offline
            pix
            schrieb am zuletzt editiert von
            #5

            Dutchman hat natürlich Recht, aber meine Lösung ließ sich besser in tapatalk tippeln…

            Wenn du in der on()-Funktion das "id:" weglässt, dann ist die Auslösung auf change ne gestellt.

            Also:

            on(IDxiaomiFehler, function(data) {
            ````ist das gleiche wie
            

            on({id:IDxiaomiFehler, change: 'ne'}, function(data) {

            
            Pix

            ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              skorpil
              schrieb am zuletzt editiert von
              #6

              Daaanke an alle. Läuft!

              1 Antwort Letzte Antwort
              0
              • DutchmanD Offline
                DutchmanD Offline
                Dutchman
                Developer Most Active Administrators
                schrieb am zuletzt editiert von
                #7

                @skorpil:

                Daaanke an alle. Läuft! `

                Super, schreibe bitte gelöst in den thread Title

                @Pix,

                Danke kannte ich noch nicht wieder was gelernt

                Sent from my iPhone using Tapatalk

                1 Antwort Letzte Antwort
                0
                Antworten
                • In einem neuen Thema antworten
                Anmelden zum Antworten
                • Älteste zuerst
                • Neuste zuerst
                • Meiste Stimmen


                Support us

                ioBroker
                Community Adapters
                Donate

                717

                Online

                32.6k

                Benutzer

                82.2k

                Themen

                1.3m

                Beiträge
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                ioBroker Community 2014-2025
                logo
                • Anmelden

                • Du hast noch kein Konto? Registrieren

                • Anmelden oder registrieren, um zu suchen
                • Erster Beitrag
                  Letzter Beitrag
                0
                • Home
                • Aktuell
                • Tags
                • Ungelesen 0
                • Kategorien
                • Unreplied
                • Beliebt
                • GitHub
                • Docu
                • Hilfe