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. Shelly 2.5, Vergleich Strings funktioniert nicht

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

Shelly 2.5, Vergleich Strings funktioniert nicht

Geplant Angeheftet Gesperrt Verschoben Blockly
4 Beiträge 2 Kommentatoren 378 Aufrufe 1 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.
  • B Offline
    B Offline
    Bidu79
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen

    Um den Winkel der Lamellen genau einstellen zu können, wollte ich in Blockly eine Logik aufbauen. Wenn die Lamellen waagrecht stehen, funktioniert mein Skript, den Motor kurze Zeit fahren zu lassen. Damit ich weiss, wie lange dies in welche Richtung passieren muss, will ich detektieren in welche Richtung die Storen zuletzt gefahren sind.

    Der Datenpunkt von Shelly ist ein String, der entweder den Inhalt "stop", "open" oder "close" hat. Wenn ich den Status entsprechend steuere funktioniert es, nur das Auslesen mit vergleichen bekomme ich nicht hin.

    Hier das funktionierende Skript zum Anfahren des Winkels über eine gewisse Zeit:
    funktionierendes_Script.png

    und der gescheiterte Vergleich:
    Skript_nicht_funktionierend.png

    hier noch das Skript:

    var timeout;
    
    
    on({id: [].concat(getState('shelly.0.SHSW-25#4C752533E986#1.Shutter.state').val != 'stop'), change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      timeout = setTimeout(async function () {
        if (getState('shelly.0.SHSW-25#4C752533E986#1.Shutter.state').val != 'stop') {
          if (getState('shelly.0.SHSW-25#4C752533E986#1.Shutter.state').val == 'open') {
            setState("0_userdata.0.Wohnzimmer.Store1.ZuletztHoch"/*ZuletztHoch*/, true);
            setState("0_userdata.0.Wohnzimmer.Store1.ZuletztRunter"/*ZuletztRunter*/, false);
          }
          setState("0_userdata.0.Wohnzimmer.Store1.ZuletztRunter"/*ZuletztRunter*/, true);
          setState("0_userdata.0.Wohnzimmer.Store1.ZuletztHoch"/*ZuletztHoch*/, false);
        }
      }, parseInt(2000));
    });
    

    kann mir da jemand helfen? Ich bin leider noch nicht so versiert in der Anwendung des gesamten ioBrokers, komme aus der FUPLA, KOPLA-Ecke.

    vielen Dank und Grüsse an alle,
    Bidu79

    paul53P 1 Antwort Letzte Antwort
    0
    • B Bidu79

      Hallo zusammen

      Um den Winkel der Lamellen genau einstellen zu können, wollte ich in Blockly eine Logik aufbauen. Wenn die Lamellen waagrecht stehen, funktioniert mein Skript, den Motor kurze Zeit fahren zu lassen. Damit ich weiss, wie lange dies in welche Richtung passieren muss, will ich detektieren in welche Richtung die Storen zuletzt gefahren sind.

      Der Datenpunkt von Shelly ist ein String, der entweder den Inhalt "stop", "open" oder "close" hat. Wenn ich den Status entsprechend steuere funktioniert es, nur das Auslesen mit vergleichen bekomme ich nicht hin.

      Hier das funktionierende Skript zum Anfahren des Winkels über eine gewisse Zeit:
      funktionierendes_Script.png

      und der gescheiterte Vergleich:
      Skript_nicht_funktionierend.png

      hier noch das Skript:

      var timeout;
      
      
      on({id: [].concat(getState('shelly.0.SHSW-25#4C752533E986#1.Shutter.state').val != 'stop'), change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        timeout = setTimeout(async function () {
          if (getState('shelly.0.SHSW-25#4C752533E986#1.Shutter.state').val != 'stop') {
            if (getState('shelly.0.SHSW-25#4C752533E986#1.Shutter.state').val == 'open') {
              setState("0_userdata.0.Wohnzimmer.Store1.ZuletztHoch"/*ZuletztHoch*/, true);
              setState("0_userdata.0.Wohnzimmer.Store1.ZuletztRunter"/*ZuletztRunter*/, false);
            }
            setState("0_userdata.0.Wohnzimmer.Store1.ZuletztRunter"/*ZuletztRunter*/, true);
            setState("0_userdata.0.Wohnzimmer.Store1.ZuletztHoch"/*ZuletztHoch*/, false);
          }
        }, parseInt(2000));
      });
      

      kann mir da jemand helfen? Ich bin leider noch nicht so versiert in der Anwendung des gesamten ioBrokers, komme aus der FUPLA, KOPLA-Ecke.

      vielen Dank und Grüsse an alle,
      Bidu79

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

      @bidu79
      An einen Trigger können nur Datenpunkt-IDs übergeben werden - keine Werte und keine Vergleiche! Der Vergleich muss innerhalb des Triggers erfolgen.

      EDIT: Ein Datenpunkt für die letzte Richtung sollte genügen:

      Bild_2022-09-26_143148061.png

      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

      B 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @bidu79
        An einen Trigger können nur Datenpunkt-IDs übergeben werden - keine Werte und keine Vergleiche! Der Vergleich muss innerhalb des Triggers erfolgen.

        EDIT: Ein Datenpunkt für die letzte Richtung sollte genügen:

        Bild_2022-09-26_143148061.png

        B Offline
        B Offline
        Bidu79
        schrieb am zuletzt editiert von
        #3

        @paul53 Vielen Dank
        Wo passiert der Vergleich, ob der Shutter.State den Wert "stop" hat oder nicht? Übersehe ich da etwas?

        Grüsse Bidu79

        paul53P 1 Antwort Letzte Antwort
        0
        • B Bidu79

          @paul53 Vielen Dank
          Wo passiert der Vergleich, ob der Shutter.State den Wert "stop" hat oder nicht? Übersehe ich da etwas?

          Grüsse Bidu79

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

          @bidu79 sagte: Wo passiert der Vergleich, ob der Shutter.State den Wert "stop" hat oder nicht?

          Wert enthält den Wert des Trigger-Datenpunktes, also "open"/"stop"/"close".

          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
          0
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          668

          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