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. Probleme mit Blockey script

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Probleme mit Blockey script

Geplant Angeheftet Gesperrt Verschoben Blockly
12 Beiträge 6 Kommentatoren 863 Aufrufe 4 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 dataeasy

    kurze Frage habe gerade einen Knoten im Kopf und komme nicht weiter

    Wenn alle Bedingungen im Scrip erfüllt sind triggert der Shelly ohne Proleme auf "true".

    aber er triggert nicht merh auf" False" und ich fragte mich warum...

    813d0e30-aa90-45a2-b461-70de6545c87a-grafik.png

    schedule('{"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":5},"period":{"days":1,"dows":"[0,1,2,3,4,5,6]"},"valid":{"from":"29.03.2023","to":""}}', async function () {
      if (compareTime("05:00", "08:00", "between") && getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val > 50) {
        if (getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val <= 43) {
          setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, true);
        } else if (compareTime("7:30", "null", ">=") || getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val >= 45) {
          setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, false);
        }
      } else if (compareTime("09:00", "17:00", "between") && getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val >= 95) {
        if (getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val <= 46) {
          setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, true);
        } else if (getState("modbus.0.holdingRegisters.40068_PV_Leistung_in_Watt").val <= 3500 || compareTime("16:00", "null", ">=") || getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val >= 51 || getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val <= 94) {
          setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, false);
        }
      } else if (compareTime("18:00", "20:00", "between") && getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val >= 70) {
        if (getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val <= 43) {
          setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, true);
        } else if (compareTime("20:15", "null", ">=") || getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val >= 45 || getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val <= 60) {
          setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, false);
        }
      }
    });
    
    

    Danke für eueren Support

    Thomas BraunT Online
    Thomas BraunT Online
    Thomas Braun
    Most Active
    schrieb am zuletzt editiert von
    #2

    @dataeasy

    Da fehlt ein Trigger/Auslöser.

    Linux-Werkzeugkasten:
    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
    NodeJS Fixer Skript:
    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

    D 1 Antwort Letzte Antwort
    0
    • D dataeasy

      kurze Frage habe gerade einen Knoten im Kopf und komme nicht weiter

      Wenn alle Bedingungen im Scrip erfüllt sind triggert der Shelly ohne Proleme auf "true".

      aber er triggert nicht merh auf" False" und ich fragte mich warum...

      813d0e30-aa90-45a2-b461-70de6545c87a-grafik.png

      schedule('{"time":{"start":"00:00","end":"24:00","mode":"minutes","interval":5},"period":{"days":1,"dows":"[0,1,2,3,4,5,6]"},"valid":{"from":"29.03.2023","to":""}}', async function () {
        if (compareTime("05:00", "08:00", "between") && getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val > 50) {
          if (getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val <= 43) {
            setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, true);
          } else if (compareTime("7:30", "null", ">=") || getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val >= 45) {
            setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, false);
          }
        } else if (compareTime("09:00", "17:00", "between") && getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val >= 95) {
          if (getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val <= 46) {
            setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, true);
          } else if (getState("modbus.0.holdingRegisters.40068_PV_Leistung_in_Watt").val <= 3500 || compareTime("16:00", "null", ">=") || getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val >= 51 || getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val <= 94) {
            setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, false);
          }
        } else if (compareTime("18:00", "20:00", "between") && getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val >= 70) {
          if (getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val <= 43) {
            setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, true);
          } else if (compareTime("20:15", "null", ">=") || getState("shelly.0.SHSW-1#E8DB84AC4CE5#1.ext.temperatureC1").val >= 45 || getState("modbus.0.holdingRegisters.40083_Batterie_SOC").val <= 60) {
            setState("shelly.0.SHSW-1#E8DB84AC4CE5#1.Relay0.Switch"/*Switch*/, false);
          }
        }
      });
      
      

      Danke für eueren Support

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #3

      @dataeasy muss man verstehen was du da machst?

      sobald von oben nach unten eine Bedingung passt ist Ende.

      direkt der erste falls, sonst falls ist ab 7:30 immer erfolgreich.

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      D 1 Antwort Letzte Antwort
      0
      • HomoranH Homoran

        @dataeasy muss man verstehen was du da machst?

        sobald von oben nach unten eine Bedingung passt ist Ende.

        direkt der erste falls, sonst falls ist ab 7:30 immer erfolgreich.

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

        @homoran es geht um die Steuerung eines Heizstabes der nur aktiv werden soll n den verschiedenen zeiträumen siehe Script in Änhängigkeiten der entsprechenden Trigger !!!

        Problem ist halt True klappt nur false nicht

        HomoranH 1 Antwort Letzte Antwort
        0
        • Thomas BraunT Thomas Braun

          @dataeasy

          Da fehlt ein Trigger/Auslöser.

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

          @thomas-braun Trigger sollte meines Erachtens der Zeitplan im Zyklus alle 5 min sein

          DJMarc75D N 2 Antworten Letzte Antwort
          0
          • D dataeasy

            @homoran es geht um die Steuerung eines Heizstabes der nur aktiv werden soll n den verschiedenen zeiträumen siehe Script in Änhängigkeiten der entsprechenden Trigger !!!

            Problem ist halt True klappt nur false nicht

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #6

            @dataeasy sagte in Probleme mit Blockey script:

            geht um die Steuerung eines Heizstabes der nur aktiv werden soll n den verschiedenen zeiträumen siehe Script in Änhängigkeiten der entsprechenden Trigger !!!

            1.) du hast nur einen Trigger, den man nicht e7nmal vollständig sieht.
            2.) ist der Honweis "siehe Skript" keineswegs hilfreich, wenn ich schreibe dass anhand des Skripts deine genaue Absicht nicht zu erkennen ist.
            3.) ist eine Antwort wie diese überhaupt nicht hilfreich. Würde nur noch getoppt von "das Skript soll machen was ich will".

            Eine präzise Erklärung aller Bedingungen und Folgen wären für dich selber möglicherweise hilfreich zu verstehen, dass das was da steht eben doch nicht das ist was du willst.

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            D 1 Antwort Letzte Antwort
            0
            • D dataeasy

              @thomas-braun Trigger sollte meines Erachtens der Zeitplan im Zyklus alle 5 min sein

              DJMarc75D Offline
              DJMarc75D Offline
              DJMarc75
              schrieb am zuletzt editiert von
              #7

              @dataeasy sagte in Probleme mit Blockey script:

              alle 5 min sein

              Dann nimm halt mal folgenden Trigger:

              Screenshot 2023-03-30 161915.png

              Lehrling seit 1975 !!!
              Beitrag geholfen ? dann gerne ein upvote rechts unten im Beitrag klicken ;)
              https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge

              1 Antwort Letzte Antwort
              0
              • D dataeasy

                @thomas-braun Trigger sollte meines Erachtens der Zeitplan im Zyklus alle 5 min sein

                N Offline
                N Offline
                Nordischerjung
                schrieb am zuletzt editiert von
                #8

                @dataeasy und warum triggerst du nicht auf deine Batterie % und / oder Temperatur und schaltest dann nach Bedingung Uhrzeit und Temperatur usw.

                Gruß Nordischerjung

                sonnige Grüße von der Ostsee

                1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

                  @dataeasy sagte in Probleme mit Blockey script:

                  geht um die Steuerung eines Heizstabes der nur aktiv werden soll n den verschiedenen zeiträumen siehe Script in Änhängigkeiten der entsprechenden Trigger !!!

                  1.) du hast nur einen Trigger, den man nicht e7nmal vollständig sieht.
                  2.) ist der Honweis "siehe Skript" keineswegs hilfreich, wenn ich schreibe dass anhand des Skripts deine genaue Absicht nicht zu erkennen ist.
                  3.) ist eine Antwort wie diese überhaupt nicht hilfreich. Würde nur noch getoppt von "das Skript soll machen was ich will".

                  Eine präzise Erklärung aller Bedingungen und Folgen wären für dich selber möglicherweise hilfreich zu verstehen, dass das was da steht eben doch nicht das ist was du willst.

                  D Offline
                  D Offline
                  dataeasy
                  schrieb am zuletzt editiert von
                  #9

                  @homoran sorry so war das nicht gemeint Asche auf mein Haupt.

                  als Trigger nutze ich aktuell den Zeitplan gesetzt auf tigger alle 5 min

                  Die Absicht des Scriptes ist zu bestimmten Zeiten z.b von 05:00 bis 08:00 einen Heistab ein zu schalten aber nur wenn bestimmte Bedingungen erfüllt sind und diesen auf wieder auszuschalten wenn wenn die definierten Werte von Sensoren erfüllt sind.

                  Dies oben in 3 Unterschiedlichen Zeiträumen erfolgen 05:00-08:00 / 09:00-17:00 / 19:00-22:00

                  Problem ist das der Heistab zwar angeht (shelly wert True) aber leider nicht mehr aus geht (shelly wert false) bzw. nicht immer und ich finde keinen Erklärung..
                  Deswegen habe ich temp schon via Oder Verknüfung eine definierte Uhrzeit eingebaut klappt aber leide rauch nicht

                  Danke

                  HomoranH D 2 Antworten Letzte Antwort
                  0
                  • D dataeasy

                    @homoran sorry so war das nicht gemeint Asche auf mein Haupt.

                    als Trigger nutze ich aktuell den Zeitplan gesetzt auf tigger alle 5 min

                    Die Absicht des Scriptes ist zu bestimmten Zeiten z.b von 05:00 bis 08:00 einen Heistab ein zu schalten aber nur wenn bestimmte Bedingungen erfüllt sind und diesen auf wieder auszuschalten wenn wenn die definierten Werte von Sensoren erfüllt sind.

                    Dies oben in 3 Unterschiedlichen Zeiträumen erfolgen 05:00-08:00 / 09:00-17:00 / 19:00-22:00

                    Problem ist das der Heistab zwar angeht (shelly wert True) aber leider nicht mehr aus geht (shelly wert false) bzw. nicht immer und ich finde keinen Erklärung..
                    Deswegen habe ich temp schon via Oder Verknüfung eine definierte Uhrzeit eingebaut klappt aber leide rauch nicht

                    Danke

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von
                    #10

                    @dataeasy dann bau maldebug Bausteine ein, die dir die aktuellen Parameter für die Bedingungen ausgeben.

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    1 Antwort Letzte Antwort
                    0
                    • D dataeasy

                      @homoran sorry so war das nicht gemeint Asche auf mein Haupt.

                      als Trigger nutze ich aktuell den Zeitplan gesetzt auf tigger alle 5 min

                      Die Absicht des Scriptes ist zu bestimmten Zeiten z.b von 05:00 bis 08:00 einen Heistab ein zu schalten aber nur wenn bestimmte Bedingungen erfüllt sind und diesen auf wieder auszuschalten wenn wenn die definierten Werte von Sensoren erfüllt sind.

                      Dies oben in 3 Unterschiedlichen Zeiträumen erfolgen 05:00-08:00 / 09:00-17:00 / 19:00-22:00

                      Problem ist das der Heistab zwar angeht (shelly wert True) aber leider nicht mehr aus geht (shelly wert false) bzw. nicht immer und ich finde keinen Erklärung..
                      Deswegen habe ich temp schon via Oder Verknüfung eine definierte Uhrzeit eingebaut klappt aber leide rauch nicht

                      Danke

                      D Offline
                      D Offline
                      dataeasy
                      schrieb am zuletzt editiert von
                      #11

                      @dataeasy uh jetzt hast du mich und wie mache ich das :confounded:

                      CodierknechtC 1 Antwort Letzte Antwort
                      0
                      • D dataeasy

                        @dataeasy uh jetzt hast du mich und wie mache ich das :confounded:

                        CodierknechtC Offline
                        CodierknechtC Offline
                        Codierknecht
                        Developer Most Active
                        schrieb am zuletzt editiert von
                        #12

                        @dataeasy sagte in Probleme mit Blockey script:

                        und wie mache ich das

                        Im Prinzip so:
                        9e89972a-693c-4845-a72a-494ae279d563-grafik.png
                        Du lässt Dir halt alles ausgeben was von Interesse ist.
                        ... bitte sinnvoll ergänzen!

                        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                        HmIP|ZigBee|Tasmota|Unifi
                        Zabbix Certified Specialist
                        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                        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

                        538

                        Online

                        32.6k

                        Benutzer

                        82.1k

                        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