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. JavaScript
  5. [gelöst] Trigger Statusänderungen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

[gelöst] Trigger Statusänderungen

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
13 Beiträge 3 Kommentatoren 1.3k Aufrufe 2 Watching
  • Ä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.
  • AlCalzoneA AlCalzone

    Nun möchte ich aber zzgl. einen Überprüfung einbauen, ob die Sensoren überhaupt erreichbar sind

    Was möchtest du auf dieser Basis entscheiden? Wenn (erreichbar / nicht erreichbar), dann ...?

    @eumats sagte in Trigger Statusänderungen:

    Denn mittlerweile habe ich über 20 Sensoren…

    Da denke ich an ein Array mit den Sensor-IDs, das du bei Skriptstart in einer Schleife durchläufst und die benötigten Trigger erstellst.

    eumatsE Offline
    eumatsE Offline
    eumats
    schrieb am zuletzt editiert von
    #3

    @AlCalzone

    Ich möchte folgendes Erreichen:

    Wenn reachable = false, dann schicke Telgrammeldung, dass der Sensor nicht erreichbar ist. Genauso würde ich dann meine Fenster offen/geschlossen Erkennung gerne darauf umbauen. Also wenn Fenster offen, dann Telgrammeldung.

    AlCalzoneA 1 Antwort Letzte Antwort
    0
    • A Offline
      A Offline
      Andre R.
      schrieb am zuletzt editiert von
      #4

      @eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht

      AlCalzoneA 1 Antwort Letzte Antwort
      0
      • eumatsE eumats

        @AlCalzone

        Ich möchte folgendes Erreichen:

        Wenn reachable = false, dann schicke Telgrammeldung, dass der Sensor nicht erreichbar ist. Genauso würde ich dann meine Fenster offen/geschlossen Erkennung gerne darauf umbauen. Also wenn Fenster offen, dann Telgrammeldung.

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        schrieb am zuletzt editiert von AlCalzone
        #5

        @eumats Dann brauchst du je einen Trigger für reachable und offen/zu. Die kannst du in etwa so bauen:

        const sensorIDs = [
            "sensor.0.id1",
            "sensor.0.id2",
            // ...
        ];
        
        for (const sensor of sensorIDs) {
            on({id: sensor + ".reachable", change: "ne"}, (obj) => {
                //... Wertänderung verarbeiten
            });
            // analog für Sensorwert
        }
        

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        eumatsE 1 Antwort Letzte Antwort
        1
        • A Andre R.

          @eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht

          AlCalzoneA Offline
          AlCalzoneA Offline
          AlCalzone
          Developer
          schrieb am zuletzt editiert von
          #6

          @Andre-R sagte in Trigger Statusänderungen:

          @eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht

          Du hast die Frage nicht gelesen, oder? ;) Für 20 Sensoren wird das recht umständlich in Blockly

          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

          eumatsE 1 Antwort Letzte Antwort
          0
          • AlCalzoneA AlCalzone

            @Andre-R sagte in Trigger Statusänderungen:

            @eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht

            Du hast die Frage nicht gelesen, oder? ;) Für 20 Sensoren wird das recht umständlich in Blockly

            eumatsE Offline
            eumatsE Offline
            eumats
            schrieb am zuletzt editiert von eumats
            #7

            @AlCalzone sagte in Trigger Statusänderungen:

            @Andre-R sagte in Trigger Statusänderungen:

            @eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht

            Du hast die Frage nicht gelesen, oder? ;) Für 20 Sensoren wird das recht umständlich in Blockly

            Korrekt... Außerdem mag ich Blocky nicht so.... ;-)

            1 Antwort Letzte Antwort
            1
            • A Offline
              A Offline
              Andre R.
              schrieb am zuletzt editiert von
              #8

              @AlCalzone doch hab ich schon gelesen. ich habs halt so gemacht. weil ich Anfänger bin und von Javascript keine Ahnung habe. :wink:

              AlCalzoneA 1 Antwort Letzte Antwort
              0
              • A Andre R.

                @AlCalzone doch hab ich schon gelesen. ich habs halt so gemacht. weil ich Anfänger bin und von Javascript keine Ahnung habe. :wink:

                AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #9

                @Andre-R Das sei dir gegönnt, aber eumats hat explizit danach gefragt, wie er es in JS mit weniger Copy&Paste hinbekommt.

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                1 Antwort Letzte Antwort
                0
                • AlCalzoneA AlCalzone

                  @eumats Dann brauchst du je einen Trigger für reachable und offen/zu. Die kannst du in etwa so bauen:

                  const sensorIDs = [
                      "sensor.0.id1",
                      "sensor.0.id2",
                      // ...
                  ];
                  
                  for (const sensor of sensorIDs) {
                      on({id: sensor + ".reachable", change: "ne"}, (obj) => {
                          //... Wertänderung verarbeiten
                      });
                      // analog für Sensorwert
                  }
                  
                  eumatsE Offline
                  eumatsE Offline
                  eumats
                  schrieb am zuletzt editiert von
                  #10

                  @AlCalzone
                  Vielen Danke für die schnelle Reaktion. Ich werde es mal versuchen für mich zu adaptieren...

                  1 Antwort Letzte Antwort
                  0
                  • eumatsE Offline
                    eumatsE Offline
                    eumats
                    schrieb am zuletzt editiert von eumats
                    #11

                    @AlCalzone
                    Kann ich den Namen eines Datenpunktes abfragen? Also z.B. Fenster Flur...

                    764d82b6-f258-4360-afde-0f415741df07-image.png

                    AlCalzoneA 1 Antwort Letzte Antwort
                    0
                    • eumatsE eumats

                      @AlCalzone
                      Kann ich den Namen eines Datenpunktes abfragen? Also z.B. Fenster Flur...

                      764d82b6-f258-4360-afde-0f415741df07-image.png

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #12

                      @eumats Der name steht in getObject(id).common.name. Wenn du das häufiger brauchst, macht es Sinn, die Namen einmal zu Skriptstart zu lesen und in einer Variable zu merken.

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      eumatsE 1 Antwort Letzte Antwort
                      1
                      • AlCalzoneA AlCalzone

                        @eumats Der name steht in getObject(id).common.name. Wenn du das häufiger brauchst, macht es Sinn, die Namen einmal zu Skriptstart zu lesen und in einer Variable zu merken.

                        eumatsE Offline
                        eumatsE Offline
                        eumats
                        schrieb am zuletzt editiert von
                        #13

                        @AlCalzone
                        Danke!

                        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

                        899

                        Online

                        32.4k

                        Benutzer

                        81.5k

                        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