Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Blockly
  5. 2 unterschiedliche Trigger sollen gleiche Routine starten

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    295

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    9
    1
    272

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    916

2 unterschiedliche Trigger sollen gleiche Routine starten

Geplant Angeheftet Gesperrt Verschoben Blockly
4 Beiträge 3 Kommentatoren 343 Aufrufe 3 Beobachtet
  • Ä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.
  • D Offline
    D Offline
    danielos
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen

    Ich habe zwischenzeitlich schon viele coole und nützliche Scripts mit Blockly realisiert. Aktuell habe ich folgendes Skript realisiert:

    Wenn ich ins Schlafzimmer gehe und die Nachttischlampe und die Stehlampe anschalte und eine gewisse Uhrzeit bereits überschritten ist, wird die Sonos-Boxe mit Schlafmusik gestartet, ein Timer gestellt und nach einer gewissen Zeit alle über eine Variable als "schlafend" markiert, damit die Alarmanlage aktiv wird.

    Soweit funktioniert alles. Ich musste aber einen kleinen Umweg machen, den ich unschön finde und bei dem ihr mir sicherlich einen besseren Weg aufzeigen könnt.

    Ich möchte nämlich die Schlafroutine nur starten, wenn beide Lampen brennen. Ich habe deshalb als Trigger die Lampe A genommen und wenn die angeschaltet wird prüft das Skript, ob die Lampe B auch brennt. In der Realität brennt die Lampe B dann auch schon, aber leider gibt's eine zeitliche Verzögerung, bis iobroker den Status der Lampe aktualisiert, weshalb das Skript immer meint, die Lampe würde nicht brennen.

    Tja, ich habe nun eine pragmatische Variante gewählt und den ganzen Codeblock kopiert und prüfe deshalb auch, ob Lampe B angestellt wurde und wenn ja, ob die Lampe A auch an ist.

    Ich bin nun aber sicher, das geht viel einfacher, als die Blöcke zu duplizieren. Ich würde eigentlich gerne die zwei Trigger-Abfolgen lassen und dann am Ende der Trigger einfach sagen, dass er die Routine XY ausführen soll, anstelle alles zu duplizieren. Geht das irgendwie?

    Danke für eure Hilfe!!

    mickymM AsgothianA 2 Antworten Letzte Antwort
    0
    • D danielos

      Hallo zusammen

      Ich habe zwischenzeitlich schon viele coole und nützliche Scripts mit Blockly realisiert. Aktuell habe ich folgendes Skript realisiert:

      Wenn ich ins Schlafzimmer gehe und die Nachttischlampe und die Stehlampe anschalte und eine gewisse Uhrzeit bereits überschritten ist, wird die Sonos-Boxe mit Schlafmusik gestartet, ein Timer gestellt und nach einer gewissen Zeit alle über eine Variable als "schlafend" markiert, damit die Alarmanlage aktiv wird.

      Soweit funktioniert alles. Ich musste aber einen kleinen Umweg machen, den ich unschön finde und bei dem ihr mir sicherlich einen besseren Weg aufzeigen könnt.

      Ich möchte nämlich die Schlafroutine nur starten, wenn beide Lampen brennen. Ich habe deshalb als Trigger die Lampe A genommen und wenn die angeschaltet wird prüft das Skript, ob die Lampe B auch brennt. In der Realität brennt die Lampe B dann auch schon, aber leider gibt's eine zeitliche Verzögerung, bis iobroker den Status der Lampe aktualisiert, weshalb das Skript immer meint, die Lampe würde nicht brennen.

      Tja, ich habe nun eine pragmatische Variante gewählt und den ganzen Codeblock kopiert und prüfe deshalb auch, ob Lampe B angestellt wurde und wenn ja, ob die Lampe A auch an ist.

      Ich bin nun aber sicher, das geht viel einfacher, als die Blöcke zu duplizieren. Ich würde eigentlich gerne die zwei Trigger-Abfolgen lassen und dann am Ende der Trigger einfach sagen, dass er die Routine XY ausführen soll, anstelle alles zu duplizieren. Geht das irgendwie?

      Danke für eure Hilfe!!

      mickymM Offline
      mickymM Offline
      mickym
      Most Active
      schrieb am zuletzt editiert von
      #2

      @danielos Du könntest doch einfach eine Pause einfügen 29429785-bd67-4bfa-b715-fb8c0735655f-image.png

      dann sollte doch genügend Zeit sein, dass der iobroker den Status der 2. Lampe aktualisiert hat.

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      1 Antwort Letzte Antwort
      0
      • D danielos

        Hallo zusammen

        Ich habe zwischenzeitlich schon viele coole und nützliche Scripts mit Blockly realisiert. Aktuell habe ich folgendes Skript realisiert:

        Wenn ich ins Schlafzimmer gehe und die Nachttischlampe und die Stehlampe anschalte und eine gewisse Uhrzeit bereits überschritten ist, wird die Sonos-Boxe mit Schlafmusik gestartet, ein Timer gestellt und nach einer gewissen Zeit alle über eine Variable als "schlafend" markiert, damit die Alarmanlage aktiv wird.

        Soweit funktioniert alles. Ich musste aber einen kleinen Umweg machen, den ich unschön finde und bei dem ihr mir sicherlich einen besseren Weg aufzeigen könnt.

        Ich möchte nämlich die Schlafroutine nur starten, wenn beide Lampen brennen. Ich habe deshalb als Trigger die Lampe A genommen und wenn die angeschaltet wird prüft das Skript, ob die Lampe B auch brennt. In der Realität brennt die Lampe B dann auch schon, aber leider gibt's eine zeitliche Verzögerung, bis iobroker den Status der Lampe aktualisiert, weshalb das Skript immer meint, die Lampe würde nicht brennen.

        Tja, ich habe nun eine pragmatische Variante gewählt und den ganzen Codeblock kopiert und prüfe deshalb auch, ob Lampe B angestellt wurde und wenn ja, ob die Lampe A auch an ist.

        Ich bin nun aber sicher, das geht viel einfacher, als die Blöcke zu duplizieren. Ich würde eigentlich gerne die zwei Trigger-Abfolgen lassen und dann am Ende der Trigger einfach sagen, dass er die Routine XY ausführen soll, anstelle alles zu duplizieren. Geht das irgendwie?

        Danke für eure Hilfe!!

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #3

        @danielos Der "pragmatische" Weg ist:

        Man baue sich mit Blockly eine Funktion mit dem obersten Baustein des folgenden Screenshot.

        Diese kann man dann mit dem dazu gehörigen letzten Baustein aufrufen. Auch mehrmals aus mehreren Triggern

        Screen Shot 2021-04-14 at 19.10.13 .png

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        D 1 Antwort Letzte Antwort
        0
        • AsgothianA Asgothian

          @danielos Der "pragmatische" Weg ist:

          Man baue sich mit Blockly eine Funktion mit dem obersten Baustein des folgenden Screenshot.

          Diese kann man dann mit dem dazu gehörigen letzten Baustein aufrufen. Auch mehrmals aus mehreren Triggern

          Screen Shot 2021-04-14 at 19.10.13 .png

          D Offline
          D Offline
          danielos
          schrieb am zuletzt editiert von
          #4

          @asgothian Herzlichen Dank, genau das habe ich gesucht!! Ich habe mir unter "Funktion" etwas ganz anderes vorgestellt. Aber es ist genau das, was ich eigentlich gesucht habe. Danke vielmals!

          1 Antwort Letzte Antwort
          0

          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

          Registrieren Anmelden
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          520

          Online

          32.8k

          Benutzer

          82.8k

          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