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. Blockly
  5. Elegante Methode um mehrere IF-Abfragen zu gestalten

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Elegante Methode um mehrere IF-Abfragen zu gestalten

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

    Hallöchen,

    ich baue mir gerade einen Email-Send-Master.
    Also ein Blockly was mir eine Email sendet unter bestimmten Bedingungen und das zentral gesteuert.
    Also wenn irgendwo eine Email geschickt werden soll dann setze ich einen DP auf einen bestimmten Wert, z.B. 10.
    Das Script weiss dann, okay Wert 10 bedeutet ich schicke eine Mail mit dem Inhalt "Gartenbewässerung gestartet" oder sowas.

    Das führt natürlich dazu dass irgendwann in einer riesigen IF-Abfrage ende.
    IF 10
    IF 11
    IF 12 usw.

    Gibt es eine Idee, wie ich das elegranter machen kann?
    Vielleicht sowas wie "CASE - SELECT"?
    Oder Rückgabe über ein Array .. keine Ahnung.

    VG

    paul53P AsgothianA OliverIOO 3 Antworten Letzte Antwort
    0
    • D daPanic

      Hallöchen,

      ich baue mir gerade einen Email-Send-Master.
      Also ein Blockly was mir eine Email sendet unter bestimmten Bedingungen und das zentral gesteuert.
      Also wenn irgendwo eine Email geschickt werden soll dann setze ich einen DP auf einen bestimmten Wert, z.B. 10.
      Das Script weiss dann, okay Wert 10 bedeutet ich schicke eine Mail mit dem Inhalt "Gartenbewässerung gestartet" oder sowas.

      Das führt natürlich dazu dass irgendwann in einer riesigen IF-Abfrage ende.
      IF 10
      IF 11
      IF 12 usw.

      Gibt es eine Idee, wie ich das elegranter machen kann?
      Vielleicht sowas wie "CASE - SELECT"?
      Oder Rückgabe über ein Array .. keine Ahnung.

      VG

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @dapanic sagte: wie "CASE - SELECT"?

      Prinzip:

      Blockly_temp.JPG

      @dapanic sagte in Elegante Methode um mehrere IF-Abfragen zu gestalten:

      Mail mit dem Inhalt "Gartenbewässerung gestartet"

      Weshalb schreibst du nicht gleich die Nachricht in den Datenpunkt?

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      1
      • D daPanic

        Hallöchen,

        ich baue mir gerade einen Email-Send-Master.
        Also ein Blockly was mir eine Email sendet unter bestimmten Bedingungen und das zentral gesteuert.
        Also wenn irgendwo eine Email geschickt werden soll dann setze ich einen DP auf einen bestimmten Wert, z.B. 10.
        Das Script weiss dann, okay Wert 10 bedeutet ich schicke eine Mail mit dem Inhalt "Gartenbewässerung gestartet" oder sowas.

        Das führt natürlich dazu dass irgendwann in einer riesigen IF-Abfrage ende.
        IF 10
        IF 11
        IF 12 usw.

        Gibt es eine Idee, wie ich das elegranter machen kann?
        Vielleicht sowas wie "CASE - SELECT"?
        Oder Rückgabe über ein Array .. keine Ahnung.

        VG

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

        @dapanic sagte in Elegante Methode um mehrere IF-Abfragen zu gestalten:

        Gibt es eine Idee, wie ich das elegranter machen kann?
        Vielleicht sowas wie "CASE - SELECT"?
        Oder Rückgabe über ein Array .. keine Ahnung.

        es gibt alles 3:

        • der case ist Baustein für case/select
        • Arrays (die in Blockly als Liste geführt werden
        • JSON Objekte mit Attributen, wo du so ein Konstrukt aufbauen kannst:
        {
          val10: { message: "der Garten ist alle", delay: 30, repeat: false, recipients: ["max", "Moritz", "jedermann"]},
          val20: { message: "der Garten ist voll", delay: 3000, repeat: true, repeatIntervall:10, recipients: []}
        }
        

        A.

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

        1 Antwort Letzte Antwort
        0
        • D daPanic

          Hallöchen,

          ich baue mir gerade einen Email-Send-Master.
          Also ein Blockly was mir eine Email sendet unter bestimmten Bedingungen und das zentral gesteuert.
          Also wenn irgendwo eine Email geschickt werden soll dann setze ich einen DP auf einen bestimmten Wert, z.B. 10.
          Das Script weiss dann, okay Wert 10 bedeutet ich schicke eine Mail mit dem Inhalt "Gartenbewässerung gestartet" oder sowas.

          Das führt natürlich dazu dass irgendwann in einer riesigen IF-Abfrage ende.
          IF 10
          IF 11
          IF 12 usw.

          Gibt es eine Idee, wie ich das elegranter machen kann?
          Vielleicht sowas wie "CASE - SELECT"?
          Oder Rückgabe über ein Array .. keine Ahnung.

          VG

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von
          #4

          @dapanic

          Ich würde auch so wie der 3. Fall von @Asgothian machen.
          Eine Datenstrukturen aufbauen wo alle notwendigen Informationen enthalten sind und dann nur eine kleine programmlogik, welche anhand Input die entsprechenden Daten aus der Datenstrukturen auswählt und anhand der Parameter dann die Aktionen ausführt.
          Das ist sehr flexibel und für zukünftiger Erweiterungen offen.
          Auch durch minimierten Programmcode weniger Fehleranfälligkeit, was nachher die Suche schwierig macht.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          D 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @dapanic

            Ich würde auch so wie der 3. Fall von @Asgothian machen.
            Eine Datenstrukturen aufbauen wo alle notwendigen Informationen enthalten sind und dann nur eine kleine programmlogik, welche anhand Input die entsprechenden Daten aus der Datenstrukturen auswählt und anhand der Parameter dann die Aktionen ausführt.
            Das ist sehr flexibel und für zukünftiger Erweiterungen offen.
            Auch durch minimierten Programmcode weniger Fehleranfälligkeit, was nachher die Suche schwierig macht.

            D Offline
            D Offline
            daPanic
            schrieb am zuletzt editiert von
            #5

            @oliverio Das würde ich mir dann mal anschauen.

            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

            527

            Online

            32.6k

            Benutzer

            82.0k

            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