Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Blockly

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly

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

      @rantanplan:

      Jetzt müssen Blockly-Scipte, bei mir nur noch laufen. `
      Bitte noch mal vom git updaten. Habe jetzt getValue=>getState gefixt.

      1 Reply Last reply Reply Quote 0
      • A
        Arminhh last edited by

        moin Bluefox

        ich habe den Javascript Adapter heute morgen geupdatet.

        Ich weiß nicht ob mein script falsch ist oder ein fehler vorliegt.

        Hier die Logausgabe

        ReferenceError:	2016-08-20 10:07:55.690	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
        ReferenceError:	2016-08-20 10:07:55.690	error	at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
        ReferenceError:	2016-08-20 10:07:55.690	error	at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2113:37)
        ReferenceError:	2016-08-20 10:07:55.690	error	at Object.utils.adapter.stateChange (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:222:17)
        ReferenceError:	2016-08-20 10:07:55.690	error	at checkPatterns (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:544:17)
        ReferenceError:	2016-08-20 10:07:55.690	error	at getObjectEnums (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:2831:28)
        ReferenceError:	2016-08-20 10:07:55.690	error	at getObjectEnums (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:2812:17)
        ReferenceError:	2016-08-20 10:07:55.690	error	at /opt/iobroker/node_modules/iobroker.javascript/javascript.js:548:48
        ReferenceError:	2016-08-20 10:07:55.690	error	at Object.subs.callback (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:1228:48)
        ReferenceError:	2016-08-20 10:07:55.690	error	at Object. (script.js.Diverses.BloklyAnwesend:3:7)
        ReferenceError:	2016-08-20 10:07:55.690	error	getValue is not defined
        message	2016-08-20 10:07:55.689	error	ping.0.Test.192_168_167_164 [object Object] getValue is not defined
        javascript-0	2016-08-20 10:06:56.134	info	script.js.Diverses.BloklyAnwesend: registered 1 subscription and 0 schedules
        javascript-0	2016-08-20 10:06:56.120	info	Start javascript script.js.Diverses.BloklyAnwesend
        javascript-0	2016-08-20 10:06:56.090	info	Stop script script.js.Diverses.BloklyAnwesend
        
        on({id: "ping.0.Test.192_168_167_164"/*SamsungS7*/, change: "ne"}, function (obj) {
          var value = obj.state.val;
          if (getValue("ping.0.Test.192_168_167_164").val == (function (){var val = true; if (val === 'true') return true; if (val === 'false') return false; return !!val;})()) {
            console.log('Ping ist true');
            setState("hm-rega.0.950"/*Anwesenheit*/, (function (){var val = true; if (val === 'true') return true; if (val === 'false') return false; return !!val;})());
            console.log('Variable Anwesend auf true');
            sendTo("pushover", {
               message: 'Armin ist Anwesend',
               sound: ""
            });
          } else {
            console.log('Ping ist false');
            setState("hm-rega.0.950"/*Anwesenheit*/, (function (){var val = 0; if (val === 'true') return true; if (val === 'false') return false; return !!val;})());
            console.log('Variable Anwesend auf false');
            sendTo("pushover", {
               message: 'Armin ist Abwesend',
               sound: ""
            });
          }
        });
        

        wenn die lange Zeile von Blockly // mit kopiert wird lässt sich der Beitrag nicht hoch laden!

        wo ist der Fehler?

        Danke für die Hilfe!

        mfg

        Armin

        P.s. was bedeutet über rechte Maustaste Baustein zusammenfalten?

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

          @Arminhh:

          P.s. was bedeutet über rechte Maustaste Baustein zusammenfalten? `

          Das was da steht. 😄

          Probiere es doch aus und Du wirst sehen was passiert.

          Grüße

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

            @Arminhh:

            moin Bluefox

            ich habe den Javascript Adapter heute morgen geupdatet.

            Ich weiß nicht ob mein script falsch ist oder ein fehler vorliegt.

            Hier die Logausgabe

            ReferenceError:	2016-08-20 10:07:55.690	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
            ReferenceError:	2016-08-20 10:07:55.690	error	at Socket. (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:45:30)
            ReferenceError:	2016-08-20 10:07:55.690	error	at Object.that.states.States.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:2113:37)
            ReferenceError:	2016-08-20 10:07:55.690	error	at Object.utils.adapter.stateChange (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:222:17)
            ReferenceError:	2016-08-20 10:07:55.690	error	at checkPatterns (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:544:17)
            ReferenceError:	2016-08-20 10:07:55.690	error	at getObjectEnums (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:2831:28)
            ReferenceError:	2016-08-20 10:07:55.690	error	at getObjectEnums (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:2812:17)
            ReferenceError:	2016-08-20 10:07:55.690	error	at /opt/iobroker/node_modules/iobroker.javascript/javascript.js:548:48
            ReferenceError:	2016-08-20 10:07:55.690	error	at Object.subs.callback (/opt/iobroker/node_modules/iobroker.javascript/javascript.js:1228:48)
            ReferenceError:	2016-08-20 10:07:55.690	error	at Object. (script.js.Diverses.BloklyAnwesend:3:7)
            ReferenceError:	2016-08-20 10:07:55.690	error	getValue is not defined
            message	2016-08-20 10:07:55.689	error	ping.0.Test.192_168_167_164 [object Object] getValue is not defined
            javascript-0	2016-08-20 10:06:56.134	info	script.js.Diverses.BloklyAnwesend: registered 1 subscription and 0 schedules
            javascript-0	2016-08-20 10:06:56.120	info	Start javascript script.js.Diverses.BloklyAnwesend
            javascript-0	2016-08-20 10:06:56.090	info	Stop script script.js.Diverses.BloklyAnwesend
            
            on({id: "ping.0.Test.192_168_167_164"/*SamsungS7*/, change: "ne"}, function (obj) {
              var value = obj.state.val;
              if (getValue("ping.0.Test.192_168_167_164").val == (function (){var val = true; if (val === 'true') return true; if (val === 'false') return false; return !!val;})()) {
                console.log('Ping ist true');
                setState("hm-rega.0.950"/*Anwesenheit*/, (function (){var val = true; if (val === 'true') return true; if (val === 'false') return false; return !!val;})());
                console.log('Variable Anwesend auf true');
                sendTo("pushover", {
                   message: 'Armin ist Anwesend',
                   sound: ""
                });
              } else {
                console.log('Ping ist false');
                setState("hm-rega.0.950"/*Anwesenheit*/, (function (){var val = 0; if (val === 'true') return true; if (val === 'false') return false; return !!val;})());
                console.log('Variable Anwesend auf false');
                sendTo("pushover", {
                   message: 'Armin ist Abwesend',
                   sound: ""
                });
              }
            });
            

            wenn die lange Zeile von Blockly // mit kopiert wird lässt sich der Beitrag nicht hoch laden!

            wo ist der Fehler?

            Danke für die Hilfe!

            mfg

            Armin

            P.s. was bedeutet über rechte Maustaste Baustein zusammenfalten? `
            Du hast aber "iobroker upload javascript" nicht aufgerufen.

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

              @Bluefox:

              @rantanplan:

              Jetzt müssen Blockly-Scipte, bei mir nur noch laufen. Bitte noch mal vom git updaten. Habe jetzt getValue=>getState gefixt.

              Leider noch nicht. Immer noch der gleiche Fehler.

              JS 2.3.3

              "ioBroker update javascript" durchgeführt.

              Den Triger mal gelöscht und wieder neu angelegt.

              Leider kein Erfolg.

              "getValue is not defined

              error hm-rega.0.14256 [object Object] getValue is not defined"

              Grüße

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

                Beiu mir hats geplappt. Durchgeführt wie im ersten Post.

                Macht vllt ne kleine Änder am Skript - ich weiss nicht mit welchem "Trigger" er den code neu generiert … ohne Änderung muss er das ja nicht 🙂

                Und Bluefox hat ein comment-Blockly eingebaut was man überall einfügen kann. cool.

                OT-Robomow: Gern 🙂 Ich plane für den Herbst noch den Umbau mit Tastensteuerung per HM-Batterieaktoren :-))

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

                  @apollon77:

                  Beiu mir hats geplappt. Durchgeführt wie im ersten Post.

                  Macht vllt ne kleine Änder am Skript - ich weiss nicht mit welchem "Trigger" er den code neu generiert … ohne Änderung muss er das ja nicht 🙂

                  Und Bluefox hat ein comment-Blockly eingebaut was man überall einfügen kann. cool.

                  OT-Robomow: Gern 🙂 Ich plane für den Herbst noch den Umbau mit Tastensteuerung per HM-Batterieaktoren :-)) `

                  Alles gut!!!!!!!

                  Script neu angelegt und es funktioniert. 😄

                  Kommentar-Baustein ist echt klasse.

                  (Was Bluefox so mal eben einbaut ist schon ein Hammer)

                  Jetzt kann die Portierung von CCU.IO nach ioBroker anfangen.

                  Wenn ich an meine Heizungssteuerung denke, wird das echt spannend. 😉

                  @Bluefox. Wäre eine Rubrik "Blockly-Scripten" möglich? Dann wäre hier nur Testen.

                  Grüße

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

                    Hallo Zusammen

                    und schon habe ich eine Frage.

                    Ich möchte einen Trigger, der immer auf 06:00 Uhr reagiert.

                    Da habe ich mir gedacht, nimm den Cron-Baustein.

                    Stunden / Jede ausgewählte Stunde / 06

                    Cron-Ausdruck: 6**

                    Da drunter steht aber "Jede Minute von 6 Stunde(n)"

                    Ist das nur eine falsche Anzeige? Hat das schon jemand ausprobiert?

                    Grüße

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

                      Bei Cron ist das so korrekt.

                      Ein "*" steht immer für "jedes mal". Bei dir also "wenn Stunde=6 UND Minute=0 ODER 1 ODER 2 ODER 3..59"

                      Wenn Du also 6 Uhr haben willst musst du bei den Minuten noch die Minute "0" auswählen, damit gilt dann "wenn Stunde=6 UND Minute=0"

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

                        Aha, wieder was gelernt. Danke!

                        Grüße

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

                          @Bluefox: Mal wieder spontanes Feedback: In ScriptGUI war es einfach eine Textmeldung sowohl an Pushover zu senden als auch ins Log zu schreiben. Bei Blockly müsste man temporär Variablen nutzen oder alles doppelt bauen (also den Text-Blockly).

                          Wie wäre es damit das man bei den "Send-To"-Blocklys noch wäwhlen könnte ob die Meldung nach dem senden auch ins Log (mit entsprechender Severity) soll ?!

                          Und noch: Zugriff auf "oldValue" im Rahmen von Triggern wäre auch super

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

                            @Bluefox

                            Ist es irgendwann geplant die Namen der Objekte in den Bausteinen anzuzeigen?

                            Das würde einiges vereinfachen.

                            Grüße

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

                              EIne Info noch zu den Timeouts (weil gerade drüber gestolpert). Hier gibts aktuell nen Unterschied zu ScriptGUI!!

                              Die aktuelle Umsetzung bei Blockly behandelt exakt EINEN Timeout/Delay und kann exakt "den letzten gestarteten" Timeout/Delay wieder löschen mit den "clear"-Kommandos.

                              Bei ScriptGUI war das etwas allgemeiner und hat immer alle pot. laufenden Timeouts gelöscht anstelle nur den letzten

                              ScriptGUI hat dabei den Code hier erzeugt:

                              }var brake_29 = [] ;function  brake_29_in1 (data){brake_29.push(setTimeout(function(){codebox_5(data);},60000))}function  brake_29_in2 (data){while (brake_29.length > 0 ) clearTimeout(brake_29.pop());}
                              
                              

                              brake_29_in1 ist "Start" und brake_29_in2 war "Stop".

                              Ich denke das die ScriptGUI-Lösung ggf etwas einfacher für Nicht-Programmierer zu verstehen ist…

                              @Bluefox: kannst ja überlegen ob Du was änderst oder nicht. Falls ja wäre ne Info cool weil ichjetzt an ersten Teststellen was umbauen musste 🙂

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

                                @Bluefox:

                                Ich überlege gerade, ob man die Tagen nicht von 1 bis 7 machen sollte. Aktuell kommen die 0 für Sonntag bis 6 für Samstag. Du wolltest aber sicher Wochentage erwischen. `
                                Hi, Bluefox

                                darüber würde ich mich freuen.

                                Tage 1 bis 7 ist leicher zu verarbeiten.

                                Bekommen wir eine Info falls das umgestellt wird?

                                Grüße

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

                                  Wenn ein Fehler im Script erkannt wird, läuft das Script weiter.

                                  Wäre es nicht besser/sicherer, wenn es gleichzeitig gestoppt wird?

                                  Grüße

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

                                    Auch wenn ich läßtig werde :oops:

                                    Das setzten einer boolschen HM-Systemvariable klappt bei mir nicht.
                                    147_fehler_01.png

                                    schedule("* * * * *", function () {
                                      console.log('Starte HF MF Feiertag');
                                      // setzte Heute_Frei unwahr
                                      setState("hm-rega.0.8862"/*Heute_Frei*/, false, true);
                                      // chk Morgen_Frei
                                      // chk Wochenende?
                                      // chk Feiertag?
                                    });
                                    
                                    

                                    Bug? Oder bin ich zu blöd? :?

                                    Grüße

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

                                      War da nicht was das Rega-Variablen nur bei "ack=false" gesendet werden. Dann wäre das blöd weil im Blockly nicht einstellbar 😞

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

                                        Ja… ich schon wieder.

                                        (Bei uns regnet es 😄 )

                                        Zwei weitere Logik-Bausteine wären klasse.

                                        Jeweils für AND und OR, bei denen man mehrere Bedingungen hinzufügen kann.

                                        Bei ScriptGUI sieht das so aus.
                                        147_and-or_baustein.png

                                        Bei "AND" diese Logik.
                                        147_logik_and.png

                                        Ist sowas in Blockly möglich?

                                        Grüße

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

                                          @apollon77:

                                          War da nicht was das Rega-Variablen nur bei "ack=false" gesendet werden. Dann wäre das blöd weil im Blockly nicht einstellbar 😞 `

                                          Hi Apollon77

                                          Heißt das, ich kann mit ioBroker/Blockly keine HM-Systemvariablen ändern? :shock:

                                          Das wäre für mich das Aus! :evil:

                                          Grüße

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

                                            Da hab ich gerade nur halbwissen bzw ein "da war doch mal was, weil ich selbst das so nicht nutze (ich hab alles was solche Variablen sind schon früher nach CCU.io umgezogen und in der CCU nur noch welche die ich dann woanders lese.

                                            Schau mal hier http://forum.iobroker.net/viewtopic.php?f=22&t=3328 … wenn ich das richtig lese versuchs mal mit dem "command"-Baustein anstelle dem "setze Wert"-Baustein.

                                            Zu Multi AND bzw OR gibt unter "Logik" den "... and ..." Baustein. Dort kannst Du jeweils wieder so einen "... and ..." Baustein reinsetzen und damit alle deine Sachen verketten. Gleiches gilt für "or".

                                            Habe im COde geschaut - es wird scheinbar nicht geklammert, also sind die alle gleichwertig und damit gleichbedeutend mit deinem ScriptGUI-Baustein (nur um einiges schlechter lesbar weil eeeelend lang 😉 )

                                            Versuchs mal damit

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            476
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            32
                                            332
                                            73409
                                            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