Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly Script läuft nicht auf anhieb

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly Script läuft nicht auf anhieb

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      Franzosenfranz last edited by

      Hallo Zusammen,

      mit nachfolgendem Script schalte ich das Licht über meiner Kaffeemaschine.

      Funktioniert wie folgt: Stromaufnahme der Maschine wird überwacht und dann das Licht mit einem Tastimpuls ein bzw. ausgeschaltet. Da es vor Ort eine herkömmliche Handbedienung der Beleuchtung gibt, wird über ein Shelly1 input
      überwacht, ob das Licht an oder aus ist, bzw. ob es nach dem Einschalten per Kaffeemaschine manuell wider ausgeschaltet wurde.

      Das funktioniert auch alles wie es soll. Ich bekomme nur einen Sache nicht in Griff, bzw. kapiere ich einfach nicht.
      Wenn ich das Script im ioBroker neu starte wird das erste Einschalten der Kaffeemaschine nicht erkannt. Trigger funktioniert dann wohl nicht. Wenn ich die Maschine dann aber ausschalte und erneut einschalte läuft das Script.
      WISO??? Bitte last mich nicht dumm sterben!

      9a10f8b8-8931-43aa-92bd-69b8c91040e7-image.png

      Gruß
      Franz

      Homoran 1 Reply Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Franzosenfranz last edited by Homoran

        @franzosenfranz sagte in Blockly Script läuft nicht auf anhieb:

        Wenn ich das Script im ioBroker neu starte wird das erste Einschalten der Kaffeemaschine nicht erkannt.

        zu diesem Zeitpunkt sind deine Variablen, die im falls abgefragt werden noch nicht definiert.

        Dazu bitte über dem Trigger beiden Variablen mit SETZE einen Wertzuweisen.
        Der wird dann bei Skriptstart zugewiesen und dann müsste es laufen

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Homoran last edited by paul53

          @homoran sagte: zu diesem Zeitpunkt sind deine Variablen, die im falls abgefragt werden noch nicht definiert.

          Ja, die Variablen liefern undefined, womit der Vergleich mit falsch nicht funktioniert. Ersetze "Kaffeemaschine_ein_aus = falsch" durch "nicht Kaffeemaschine_ein_aus"; dann funktioniert es auch mit undefined.

          1 Reply Last reply Reply Quote 0
          • F
            Franzosenfranz last edited by

            Danke euch beiden! Typischer Anfängerfehler........

            Habe ich eigentlich vor 35 Jahren schon gelernt, dass man Variablen immer erst eine Definition zuweisen sollte.

            Funktioniert hätten beide Lösungsvorschläge von paul53 und Homoran. Gewählt habe ich die von Homoran, da in meinen Augen eleganter.

            Bei der Lösung von paul53 hätte ich weiter unten im Script die Abfrage von "Licht__Kaffeemaschine_manuell_aus = falsch" auch auf noch durch "nicht Licht__Kaffeemaschine_manuell_aus" ersetzten müssen.

            3f7b7184-ef4b-41f2-8d56-1a39d401e6ba-image.png

            Gruß
            Franz

            1 Reply Last reply Reply Quote 0
            • First post
              Last post

            Support us

            ioBroker
            Community Adapters
            Donate

            870
            Online

            32.0k
            Users

            80.4k
            Topics

            1.3m
            Posts

            3
            4
            190
            Loading More Posts
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes
            Reply
            • Reply as topic
            Log in to reply
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
            The ioBroker Community 2014-2023
            logo