Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Erstes eigenes Blockly Script - funktioniert plötzlich nicht mehr

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Erstes eigenes Blockly Script - funktioniert plötzlich nicht mehr

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

      @tempestas:

      ähm…

      entweder echten Skript Export oder ein Screenshot deines Blockly "Codes" würde ich vorschlagen.

      Das da oben ist ja kaum zu lesen mit den ganzen tags. `
      ähm… Das ist ein richtiger Export.

      @crepp

      Was mir so auf die Schnelle auffällt.

      Pushover und Email werden nur 1x beim starten des Scripts ausgeführt.

      Die Bausteine befinden sich nicht innerhalb des Triggers.

      Was willst Du denn mit dem Script bewirken?

      Momentan wird der Trigger JEDESMAL ausgeführt wenn es kleiner (dunkler) als 30 wird.

      z.B.

      Bei 29 wird der Trigger ausgeführt.

      Lampe wird eingeschaltet, Timeout für 2 Std. gestartet um Lampe wieder auszuschalten.

      Soweit OK.

      Jetzt wird es innerhalb der 2 Std. dunkler (was ja auch zu erwarten ist)

      Bei 28 wird der Trigger wieder ausgeführt.

      Lampe wird eingeschaltet, obwohl sie schon eingeschaltet ist. (sollte man grundsätzlich vermeiden, DutyCycle)

      Dann wird der Timer gelöscht und wieder auf 2 Std. gesetzt.

      Das gleiche bei 27, 26, 25......

      Jetzt wird es wieder heller 0, 1, 2.........

      Das Script wird wieder jedes mal ausgeführ. Der Wert ist immer noch <30.

      Das Konzept würde ich noch mal überdenken.

      Grüße

      1 Reply Last reply Reply Quote 0
      • T
        tempestas last edited by

        @rantanplan:

        also ich fand Variante zwei irgendwie lesbarer.

        Ich gebe zu, meine Formulierung war nicht ideal. Letztlich ging es aber darum, die Wahrscheinlichkeit für Feedback zu erhöhen (also eine freundliche Absicht). Und ich glaube, dass mehr Leute die wenigen Zeilen lesen als sich durch die lange Variante zu quälen.

        Aber das ist jetzt OT.

        1 Reply Last reply Reply Quote 0
        • rantanplan
          rantanplan last edited by

          @tempestas:

          @rantanplan:

          also ich fand Variante zwei irgendwie lesbarer. `
          [OT: ON]

          Du bist ja auch wahrscheinlich ein echter Scriptler. 😉

          Für uns kleine Blocklyler sind Export und Bildchen am schönsten 😄

          [OT: OFF]

          Grüße

          1 Reply Last reply Reply Quote 0
          • C
            crepp last edited by

            Danke für die Tipps, werde ich Mal überprüfen

            Gesendet von meinem HUAWEI MT7-L09 mit Tapatalk

            1 Reply Last reply Reply Quote 0
            • C
              crepp last edited by

              Ziel des Scripts ist das Anschalten der Lampen bei Erreichen von Helligkeit 30 für 2h. Den Rest der Nacht sollen diese ausbleiben.

              Gesendet von meinem HUAWEI MT7-L09 mit Tapatalk

              1 Reply Last reply Reply Quote 0
              • rantanplan
                rantanplan last edited by

                @crepp:

                Ziel des Scripts ist das Anschalten der Lampen bei Erreichen von Helligkeit 30 für 2h. Den Rest der Nacht sollen diese ausbleiben. `
                Als Beispiel habe ich Dein Blockly mal etwas umgebaut. (nicht getestet)

                Da ich Deine Datenpunkte nicht habe, musst Du die an zwei Stellen selbst einsetzen.
                147_beispiel_crepp.png

                Hier der Export:

                ! ````
                <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="0pHZ{vcW)lJY`fb6pck" x="37" y="-1113"><field name="COMMENT">BRIGHTNESS triggern</field>
                <next><block type="on_ext" id="d;BVWqU
                Doaqqfnc}A8a"><mutation items="1"></mutation>
                <field name="CONDITION">ne</field>

                    <value name="OID0"><shadow type="field_oid" id="wiw3!IYQfI[=?G_KN(-R"><field name="oid">default</field></shadow></value> 
                    <statement name="STATEMENT"><block type="comment" id="*)u)s01(+a.^cr=YjEo)"><field name="COMMENT">gewünschte Werte eingrenzen</field>
                        <next><block type="controls_if" id="HqdptKMJmdh*Qg^n-Fl+"><value name="IF0"><block type="logic_operation" id="?XTdy!]m,h@ucSm:WV`0" inline="false"><field name="OP">AND</field>
                                <value name="A"><block type="logic_compare" id="pg^]I{[Ho-W)E8vojt_?"><field name="OP">LTE</field>
                                    <value name="A"><block type="get_value" id="^1b23It8Qy^3y%h]Y!T^"><field name="ATTR">val</field>
                                        <field name="OID">hm-rpc.0.NEQ0320690.1.BRIGHTNESS</field></block></value> 
                                    <value name="B"><block type="text" id="k(.Y_+6=0aNO!;?q=Z30"><field name="TEXT">30</field></block></value></block></value> 
                                <value name="B"><block type="logic_compare" id="LAdEMDDHWXKMWh:VjwS4"><field name="OP">GTE</field>
                                    <value name="A"><block type="get_value" id="Z?j,,misEqa[_VT]7d.T"><field name="ATTR">val</field>
                                        <field name="OID">hm-rpc.0.NEQ0320690.1.BRIGHTNESS</field></block></value> 
                                    <value name="B"><block type="text" id="91yN)@K1c=n`1S?L)qY#"><field name="TEXT">25</field></block></value></block></value></block></value> 
                            <statement name="DO0"><block type="comment" id="+S?0|pZATaMz1}CzX^~."><field name="COMMENT">Nur ausführen wenn Lampe aus ist</field>
                                <next><block type="controls_if" id="YJb4cCS+,@jNK9CWFz?z"><value name="IF0"><block type="logic_compare" id=";|)#0MYE[E5#(0=JzXk/"><field name="OP">EQ</field>
                                        <value name="A"><block type="get_value" id="u)L61t7Dh0@VPRfs!8EF"><field name="ATTR">val</field>
                                            <field name="OID">ID auswählen</field></block></value> 
                                        <value name="B"><block type="logic_boolean" id="qqvtv]*tRZ7sgB^2V3bE"><field name="BOOL">FALSE</field></block></value></block></value> 
                                    <statement name="DO0"><block type="procedures_callnoreturn" id="b}b7X}%mxQ2/i!je]A0%"><mutation name="LampeEin"></mutation>
                                        <next><block type="procedures_callnoreturn" id=":~}9e0W4xmofiGxnwW]l"><mutation name="LampeAus"></mutation></block></next></block></statement></block></next></block></statement></block></next></block></statement></block></next></block> 
                

                <block type="procedures_defnoreturn" id="8_KqmQLaVS6L(-X%G}i" x="-288" y="-763"><field name="NAME">LampeEin</field>
                <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                <statement name="STACK"><block type="control" id="d],9gsKL`X1f:(FjP
                ,5"><mutation delay_input="false"></mutation>
                <field name="OID">hm-rpc.0.MEQ1438874.1.STATE</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE"><block type="logic_boolean" id=")=Xq?8E}6QPPtq~+D3w!"><field name="BOOL">TRUE</field></block></value>
                <next><block type="pushover" id="AY;G(Wxxxxx5.V[{z]{"><field name="INSTANCE">.0</field>
                <field name="SOUND">bugle</field>
                <field name="PRIORITY">0</field>

                        <value name="MESSAGE"><shadow type="text" id="Z{dLen%l-7%egHK={q8Z"><field name="TEXT">Kugellampen bei Dämmerung für 2h an (< 30)</field></shadow></value> 
                        <value name="URL"><block type="text" id="CTQcG;Pq4(J-rdW(#(am"><field name="TEXT">http://xxxx:8082/vis/#Tablet_Final</field></block></value></block></next></block></statement></block> 
                

                <block type="procedures_defnoreturn" id="|OJe]Y-?I7fd!m[GI]S" x="312" y="-763"><field name="NAME">LampeAus</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="timeouts_settimeout" id="%?YX2J)iGt#;:Hg3@9!("><field name="NAME">timeout</field> <field name="DELAY">7200000</field> <statement name="STATEMENT"><block type="control" id="f/S/Ei|kY^%.82Opu-0m"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.MEQ1438874.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="Qvkr(o:od:W?m8=yWTq"><field name="BOOL">FALSE</field></block></value>
                <next><block type="email" id="3H9OWJf3/vDSiJwX-.eA"><field name="INSTANCE">.0</field>
                <field name="IS_HTML">TRUE</field>

                            <value name="TO"><shadow type="text" id="hx,z}JE_`sT0O;UA1E0H"><field name="TEXT">xxxx@gmail.com</field></shadow></value> 
                            <value name="TEXT"><shadow type="text" id="(K+=P`xf=Nm!cx,,=lJp"><field name="TEXT">Kugellampen AUS</field></shadow></value> 
                            <value name="SUBJECT"><shadow type="text" id="DVkB8}Al:alQL-ewpYQg"><field name="TEXT">http://xxxxx:8082/vis/#Tablet_Final</field></shadow></value></block></next></block></statement></block></statement></block></xml> 
                

                ! ````

                Bei Fragen fragen 😉

                Grüße

                1 Reply Last reply Reply Quote 0
                • C
                  crepp last edited by

                  Hab es gerade probiert und hat auf Anhieb funktioniert. Das Script hat mir auch geholfen die Logik dahinter zu verstehen. Vielen Dank für deine Hilfe!

                  Gruß crepp

                  1 Reply Last reply Reply Quote 0
                  • rantanplan
                    rantanplan last edited by

                    Danke für die Rückmeldung, gern geschehen.

                    Würdest Du bitte noch den Betreff in Deinem ersten Beitrag mit [gelöst] ändern.

                    Weitere Infos findest Du hier. http://forum.iobroker.net/viewtopic.php?f=8&t=2451

                    Grüße

                    1 Reply Last reply Reply Quote 0
                    • C
                      crepp last edited by

                      Klar

                      1 Reply Last reply Reply Quote 0
                      • C
                        crepp last edited by

                        Wie ich jetzt festgestellt habe funktioniert das Script grundsätzlich, allerdings schaltet die Lampe abends mit Einbruch der Dämmerung wie gewollt, am morgen zwischen den eingestellten Triggerwerten jedoch auch. Das ist natürlich so nicht gewollt. Ich habe dann damit experimentiert den Zeitbereich einzugrenzen (zw, 18:00 und 22:00) Dann hat das Script aber nicht mehr funktioniert. Weiss jemand Rat ? Ich möchte die Lampe auch nicht die ganze Nacht leuchten lassen …

                        MfG

                        crepp

                        Im Anhang noch mal die aktuelle Version.
                        686_unbenannt.png

                        1 Reply Last reply Reply Quote 0
                        • rantanplan
                          rantanplan last edited by

                          @crepp:

                          Ich habe dann damit experimentiert den Zeitbereich einzugrenzen (zw, 18:00 und 22:00) Dann hat das Script aber nicht mehr funktioniert. Weiss jemand Rat ? Ich möchte die Lampe auch nicht die ganze Nacht leuchten lassen … `

                          Hallo

                          Zeige doch mal Deine Versuche.

                          Grüße

                          1 Reply Last reply Reply Quote 0
                          • C
                            crepp last edited by

                            686_unbenannt.png Hallo,

                            Das war die Version die überhaupt nicht funktioniert hat.

                            Ich habe diese Version aber leider gelöscht, nachdem ich tagelang verschieden Sachen getestet hatte.

                            Ich hatte hier an der Stelle mit dem Pfeil eine Zeitfunktion nach der Art "und nur zwischen 16.00 und 22:00"

                            Ich finde aber den entsprechenden Baustein nicht mehr.

                            Ich dachte mit der Zeitfunktion kann ich die Schaltung beeinflussen …

                            War das programmlogisch nicht richtig ?

                            Gruß

                            crepp

                            1 Reply Last reply Reply Quote 0
                            • rantanplan
                              rantanplan last edited by

                              Hallo crepp

                              Der Baustein den Du suchst ist der 2. unter "Datum und Zeit".

                              Klick mal auf den Pfeil hinter "kleiner als".

                              Viele Wege führen nach Rom.

                              Deine Lösung könnte jetzt so aussehen.
                              147_teil-1.png

                              Grüße

                              1 Reply Last reply Reply Quote 0
                              • C
                                crepp last edited by

                                Ah ok, ich hatte den Zeitbaustein unter den Trigger Helligkeit gesetzt, ich probier das jetzt mal so.

                                Danke für die schnelle Hilfe

                                crepp

                                1 Reply Last reply Reply Quote 0
                                • S
                                  Stormbringer last edited by

                                  Bin gerade auf der Suche wie man "und" und "oder" Bedingungen gruppiert in Blockly und bin dabei auf eueren schönen "und" mit 2 Ausgängen gestoßen. Wenn man den auf "oder" umstellen kann wäre das sicher die Lösung von meinem Problem aber ich finde und kenne nur den einfachen "und/oder" Block mit einem Ein- und Ausgang. Wo ist denn der versteckt?

                                  1 Reply Last reply Reply Quote 0
                                  • rantanplan
                                    rantanplan last edited by

                                    @Stormbringer:

                                    Bin gerade auf der Suche wie man "und" und "oder" Bedingungen gruppiert in Blockly und bin dabei auf eueren schönen "und" mit 2 Ausgängen gestoßen. Wenn man den auf "oder" umstellen kann wäre das sicher die Lösung von meinem Problem aber ich finde und kenne nur den einfachen "und/oder" Block mit einem Ein- und Ausgang. Wo ist denn der versteckt? `
                                    Hallo

                                    Eine Frage stellen, die mit dem Thema dieses Thread nicht zutun hat, der zudem mit [gelöst] gekennzeichnet ist, macht nicht viel Sinn!

                                    Aber sei es drum. Klick doch einfach mal auf das Pfeilchen hinter dem "und"…....

                                    Grüße

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      Stormbringer last edited by

                                      So offtopic fand ich es gar nicht aber sorry. Ich finde den Block ja erst gar nicht 😉 Den einzigen "und" Block den ich finde ist der in Logik und der schaut ganz anders aus. Soll ich einen neuen Thread aufmachen und hierher verlinken um den "und" Block zu beschreiben den ich suche?
                                      2548_bildschirmfoto_2017-05-21_um_13.18.50.png

                                      1 Reply Last reply Reply Quote 0
                                      • rantanplan
                                        rantanplan last edited by

                                        Eine neuen Thread mit "[Frage] Blockly …." wäre gut.

                                        Aber Dein Problem verstehe ich nicht ganz. Die Problemstellung bitte an einem Beispiel.

                                        Grüße

                                        1 Reply Last reply Reply Quote 0
                                        • greatluis
                                          greatluis last edited by

                                          Als Antwort auf die Frage mit dem UND

                                          wenn du denn UND Baustein mit der rechten Maustaste anklickst, kannst du externe Eingänge auswählen.

                                          Dann sieht er so aus wie auf dem Bild

                                          habs selber gerade erst heraus gefunden 😉

                                          1 Reply Last reply Reply Quote 0
                                          • C
                                            crepp last edited by

                                            Hallo,

                                            muss hier nochmal einhaken, da ich den Thread gestartet habe. Hatte ursprünglich gedacht das selber hinzubekommen, dem ist allerdings nicht so.

                                            Aktuell läuft das Script zu richtigen Zeit an (Dämmerung definiert über Brightness) Obwohl ich einen timeaut von 4h definiert habe läuft es nur 12min stoppt um dann nach weiteren 10min wieder für 12min die Lampe einzuschalten ?!

                                            Ich habe einen kleiner als-Wert für Brightness definiert, deswegen bin ich wegen der Unterbrechung doch etwas verunsichert.

                                            crepp 686_unbenannt2.png 686_unbenannt.png
                                            Im Diagramm sieht man die Unterbrechung…

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            559
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            26
                                            4286
                                            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