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. Tester
  4. Blockly

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Blockly

Geplant Angeheftet Gesperrt Verschoben Tester
332 Beiträge 32 Kommentatoren 82.6k Aufrufe
  • Ä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.
  • M Online
    M Online
    mike2712
    schrieb am zuletzt editiert von
    #203

    Hallo,

    ich bekomme es immer noch nicht am laufen, ich habe glaube ich so ziemlich fast alles ausprobiert.

    @mike2712:

    @Bluefox:

    Kann es sein, dass dein _EG.Flur.Licht.State immer nur "true" ist?

    Dann solltest du auf "wurde aktualisiert" ändern.

    Und bitte im zweiten Fall versuchst du auf ein Wert zu triggern… Du musst Objekt ID nehmen.

    Und natürlich "Javascript" Adapter muss laufen und Skript muss gespeichert sein und auch laufen. `

    EG Flur Licht ist nicht immer "true", ich spiele damit rum.

    2. Fall habe ich auch geändert, ohne Erfolg.

    Javascript Adapter läuft, selbstverständlich speichere ich und aktualisiere nochmals.

    Unter den Adapter Einstellungen habe ich den Haken bei "Erlaube das Kommando "setObject": " gesetzt, aber das hatte wohl auch nichts damit zu tun.

    Benötige ich noch irgendetwas wo ich vielleicht nicht dran denke, oder was mir so nicht bewusst ist (z.B. Cron oder ID Einfügen)?

    Bin irgendwie am verzweifeln.

    blockly.JPG

    Im Log ist nichts zu sehen, weder im Script Log unterhalb der Programmierung, noch in iOBroker.

    Das ist der Auszug aus dem Log "info" von iobroker.

    ! hm-rpc-0 2016-09-12 20:20:19.311 info setValue ["MEQ0276480:1","STATE",false] BOOL
    ! hm-rpc-0 2016-09-12 20:20:15.972 info setValue ["MEQ0276480:1","STATE",true] BOOL
    ! hm-rpc-0 2016-09-12 20:19:47.767 info setValue ["MEQ0276480:1","STATE",false] BOOL

    Lg Mike `

    Folgende Warnungen bekomme ich, kann es damit etwas zu tun haben, weiß leider nicht was das bedeutet.

    ! Home-ioBroker 2016-09-20 19:02:54.094 warn host.Home-ioBroker instance system.adapter.javascript.0 already running with pid 2724
    ! host-Home-ioBroker 2016-09-20 19:02:24.080 warn instance system.adapter.javascript.0 terminated due to SIGTERM
    ! host-Home-ioBroker 2016-09-20 19:02:03.237 warn instance system.adapter.javascript.0 already running with pid 1672
    ! host-Home-ioBroker 2016-09-20 19:01:53.019 warn instance system.adapter.javascript.0 already running with pid 1672
    ! host-Home-ioBroker 2016-09-20 19:01:33.223 warn instance system.adapter.javascript.0 terminated due to SIGTERM
    ! host-Home-ioBroker 2016-09-20 19:01:23.005 warn instance system.adapter.javascript.0 terminated due to SIGTERM
    ! host-Home-ioBroker 2016-09-20 19:00:44.098 warn instance system.adapter.javascript.0 already running with pid 1020
    ! host-Home-ioBroker 2016-09-20 19:00:14.084 warn instance system.adapter.javascript.0 terminated due to SIGTERM

    Gruß Mike

    ioBroker im Docker auf Qnap TS-453A 16GB Ram 4-Bay

    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #204

      @mike2712:

      Hallo,

      egal was und wie ich es mache, ich bekomme mit Blockly kein Licht gesteuert.

      Habe mir die Hilfe auf "https://github.com/ioBroker/ioBroker.ja … ckly_en.md" angeschaut, meiner Meinung nach alles gemacht wie es dort steht. Mache ich irgendetwas grundsätzliches noch falsch ?

      blockly.JPG

      Sollte nicht theoretisch beides funktionieren ? Wenn EG Flur Licht sich ändert, OG 1 Flur Licht einschalten, im ersten teil mit wert von EG Flur, oder im 2. ein?

      Habe auch etliche andere Sachen versucht, möchte zunächst einfach nur ein Licht schalten können, wie ist erst einmal egal.

      Lg Mike `
      Kannst du da debug Ausgaben einbauen? Ob trigger überhaupt funktioniert?

      1 Antwort Letzte Antwort
      0
      • E Offline
        E Offline
        Elektroman
        schrieb am zuletzt editiert von
        #205

        Vielen danke für den Tip Bluefox, frage ist nur wie?

        Wird der timeout beim erneuten drücken des Taster nicht so oder so zurückgesetzt?

        1 Antwort Letzte Antwort
        0
        • apollon77A Offline
          apollon77A Offline
          apollon77
          schrieb am zuletzt editiert von
          #206

          @Elektroman:

          Vielen danke für den Tip Bluefox, frage ist nur wie?

          Wird der timeout beim erneuten drücken des Taster nicht so oder so zurückgesetzt? `

          Direkt unter dem "timeout"-block (heisst bei die "ausführen" ist ein "clearTimeout" (weiss grad nicht wie der in deutsch heisst … den musst Du nehmen und einbauen wenn Du ausschaltest

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          1 Antwort Letzte Antwort
          0
          • E Offline
            E Offline
            Elektroman
            schrieb am zuletzt editiert von
            #207

            Puhhhh,

            also

            1. mit Time out stop bekomme ich es leider nicht hin, mir ist leider nicht klar wo ich ihn platzieren muss

            2. bekomme ich leider keine richtige Rückmeldung vom Receiver welcher Eingang gerade ausgewählt ist. Bereutet im Klartext:

            Ich schalte das Radio an und meine Frau schaltet danach auf TV um Timer schaltet leider aus :-(

            1 Antwort Letzte Antwort
            0
            • apollon77A Offline
              apollon77A Offline
              apollon77
              schrieb am zuletzt editiert von
              #208

              "Time out stop" nutzt du um das automatische ausschalten nach ner Stunde zu "stoppen" (also zu verhindern). Also muss es an alle Stellen wo du es stoppen willst … AM einfachsteh muss das in den Block wo du explizit ausschaltest weil Du sollst doppelt ausschaltest - einmal sofort und einmal der Timer später.

              Das Problem mit der Fehlenden Rückmeldung und damit zu frühem ausschalten löst das freilich nicht ;(

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              1 Antwort Letzte Antwort
              0
              • E Offline
                E Offline
                Elektroman
                schrieb am zuletzt editiert von
                #209

                Die Sache mit dem autom. abschalten werde ich jetzt löschen, da ich ja keine Rückmeldung bekomme.

                Ist aber auch nicht schlimm, vergessen kann man das ja eigentlich nicht ;-)

                Wichtiger ist die Frage wie ich ein Web-Radiosender weiter schalten kann. Aber das kann mir max. hier der Entwickler des Adapters sagen (auch an dieser Stelle vielen Dank und meinen großen Respekt dafür), oder?

                Ich habe leider auch keine aktuelle Liste mit Befehlen von YAMAHA gefunden, die ich als "Command" einfügen könnte

                Noch Jemand eine Idee ?

                1 Antwort Letzte Antwort
                0
                • M Online
                  M Online
                  mike2712
                  schrieb am zuletzt editiert von
                  #210

                  Hallo,

                  @Bluefox:

                  Kannst du da debug Ausgaben einbauen? Ob trigger überhaupt funktioniert? `

                  ja das habe ich nochmals in vielen Varianten versucht, hatte ich auch schon mal hier gepostet "Beitragvon mike2712 » 12.09.2016, 19:11"

                  Kann das etwas mit den Warnungen zu tun haben? Ich denke auch das der Trigger nicht funktioniert, aber warum?

                  Lg Mike

                  ioBroker im Docker auf Qnap TS-453A 16GB Ram 4-Bay

                  1 Antwort Letzte Antwort
                  0
                  • rantanplanR Online
                    rantanplanR Online
                    rantanplan
                    schrieb am zuletzt editiert von
                    #211

                    @mike2712:

                    Hallo,

                    egal was und wie ich es mache, ich bekomme mit Blockly kein Licht gesteuert.

                    Habe mir die Hilfe auf "https://github.com/ioBroker/ioBroker.ja … ckly_en.md" angeschaut, meiner Meinung nach alles gemacht wie es dort steht. Mache ich irgendetwas grundsätzliches noch falsch ?

                    blockly.JPG

                    Sollte nicht theoretisch beides funktionieren ? Wenn EG Flur Licht sich ändert, OG 1 Flur Licht einschalten, im ersten teil mit wert von EG Flur, oder im 2. ein?

                    Habe auch etliche andere Sachen versucht, möchte zunächst einfach nur ein Licht schalten können, wie ist erst einmal egal.

                    Lg Mike `

                    Hallo mike2712

                    Dies wird Dir nicht wirklich weiterhelfen.

                    Aber ich habe Dein Blockly mal nach gebaut.
                    147_lampeschaltetlampe.png
                    Beide Versionen funktionieren einwandfrei.

                    Das erzeugte Script sieht so aus.

                    ! on({id: "hm-rpc.0.KEQ0881320.1.STATE"/WZ-TA-LErker:1.STATE/, change: "ne"}, function (obj) {
                    ! var value = obj.state.val;
                    ! var oldValue = obj.oldState.val;
                    ! setState("hm-rpc.0.KEQ1075100.1.STATE"/WZ-Licht-Regal:1.STATE/, getState("hm-rpc.0.KEQ0881320.1.STATE").val);
                    ! });
                    ! on({id: 'hm-rpc.0.KEQ0881320.1.STATE', change: "ne"}, function (obj) {
                    ! var value = obj.state.val;
                    ! var oldValue = obj.oldState.val;
                    ! setState("hm-rpc.0.KEQ1075100.1.STATE"/WZ-Licht-Regal:1.STATE/, getState("hm-rpc.0.KEQ0881320.1.STATE").val);
                    ! });

                    Die Trigger sind in Ordnung. Das Problem muss woanders sein.

                    Grüße

                    Rantanplan

                    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                    1 Antwort Letzte Antwort
                    0
                    • M Online
                      M Online
                      mike2712
                      schrieb am zuletzt editiert von
                      #212

                      Hallo
                      @rantanplan:

                      Hallo mike2712

                      Dies wird Dir nicht wirklich weiterhelfen.

                      Aber ich habe Dein Blockly mal nach gebaut.

                      LampeSchaltetLampe.png

                      Beide Versionen funktionieren einwandfrei.

                      Das erzeugte Script sieht so aus.

                      ! on({id: "hm-rpc.0.KEQ0881320.1.STATE"/WZ-TA-LErker:1.STATE/, change: "ne"}, function (obj) {
                      ! var value = obj.state.val;
                      ! var oldValue = obj.oldState.val;
                      ! setState("hm-rpc.0.KEQ1075100.1.STATE"/WZ-Licht-Regal:1.STATE/, getState("hm-rpc.0.KEQ0881320.1.STATE").val);
                      ! });
                      ! on({id: 'hm-rpc.0.KEQ0881320.1.STATE', change: "ne"}, function (obj) {
                      ! var value = obj.state.val;
                      ! var oldValue = obj.oldState.val;
                      ! setState("hm-rpc.0.KEQ1075100.1.STATE"/WZ-Licht-Regal:1.STATE/, getState("hm-rpc.0.KEQ0881320.1.STATE").val);
                      ! });

                      Die Trigger sind in Ordnung. Das Problem muss woanders sein.

                      Grüße `
                      ich habe meins jetzt mal exakt so gemacht wie Dein, natürlich mit meinem Licht.

                      Der Code ist unterschiedlich in der ersten Zeile:

                      ! on({id: 'hm-rpc\.0\.MEQ0276480\.1\.STATE', change: "ne"}, function (obj) {
                      ! var value = obj.state.val;
                      ! var oldValue = obj.oldState.val;
                      ! setState("hm-rpc.0.MEQ0276492.1.STATE"/_OG1 Flur Licht.STATE/, getState("hm-rpc.0.MEQ0276539.1.STATE").val);
                      ! });

                      Ich schau mal, jetzt habe ich ja einen Ansatz, aber verstehe tue ich das nicht.

                      Auch das bringt mich nicht weiter, folgendes script habe ich mit java, ohne Blockly erstellt, geht auch nicht.

                      ! on({id: 'hm-rpc.0.MEQ0276480.1.STATE', change: "ne"}, function (obj) {
                      ! var value = obj.state.val;
                      ! var oldValue = obj.oldState.val;
                      ! setState("hm-rpc.0.MEQ0276492.1.STATE"/_OG1 Flur Licht.STATE/, getState("hm-rpc.0.MEQ0276539.1.STATE").val);
                      ! });

                      Gruß Mike

                      ioBroker im Docker auf Qnap TS-453A 16GB Ram 4-Bay

                      1 Antwort Letzte Antwort
                      0
                      • M Online
                        M Online
                        mike2712
                        schrieb am zuletzt editiert von
                        #213

                        Hallo,

                        vielen Dank für die Hilfe, ich hab es jetzt am laufen **** freu ****.

                        Es lag daran das Script unter global und nicht unter common war.

                        Weiß zwar noch nicht wo der Unterschied ist, aber jetzt kann ich loslegen mit dem testen und spielen.

                        Lg Mike

                        ioBroker im Docker auf Qnap TS-453A 16GB Ram 4-Bay

                        1 Antwort Letzte Antwort
                        0
                        • rantanplanR Online
                          rantanplanR Online
                          rantanplan
                          schrieb am zuletzt editiert von
                          #214

                          @mike2712:

                          Hallo,

                          vielen Dank für die Hilfe, ich hab es jetzt am laufen **** freu ****.

                          Es lag daran das Script unter global und nicht unter common war.

                          Weiß zwar noch nicht wo der Unterschied ist, aber jetzt kann ich loslegen mit dem testen und spielen.

                          Lg Mike `

                          Na dann viel Spaß!

                          Meine Scripte liegen alle oberhalb von "global" und "common".
                          147_blocklyscripte.png
                          Die Bedeutung von "global" und "common" ist mir noch ganz klar.

                          Grüße

                          Rantanplan

                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                          1 Antwort Letzte Antwort
                          0
                          • rantanplanR Online
                            rantanplanR Online
                            rantanplan
                            schrieb am zuletzt editiert von
                            #215

                            Hallo

                            Ich bin gerade dabei meine Heizungsscripte von ScriptGUI nach Blockly zu bringen.

                            Wenn ich das durch habe, kann ich CCU.IO ausschalten :D

                            Jetzt vermisse ich aber einen Baustein in Blockly :(

                            Bei ScriptGUI hieß der "Timespan".

                            Damit konnte man herausfinden ob die aktuelle Zeit innerhalb einen Zeitbereiches ist oder nicht.
                            147_timespan.png

                            Ein erzeugtes Script von dem Baustein sieht so aus.

                            ! function codebox_21(data) {
                            ! var inputlocal_131_out = Start_Zeit_Bereich;
                            ! var inputlocal_132_out = Ende_Zeit_Bereich;
                            ! var now = new Date();
                            ! var time1 = new Date();
                            ! var time2 = new Date();
                            ! var in1 = inputlocal_131_out;
                            ! var in2 = inputlocal_132_out;
                            ! var double1 = in1.split(" ");
                            ! var double2 = in2.split(" ");
                            ! var time;
                            ! var date1;
                            ! var date2;
                            ! if (double1[1]) {
                            ! time = double1[1].split(":");
                            ! date1 = double1[0].split(".");
                            ! date2 = double1[0].split("-");
                            ! } else {
                            ! time = in1.split(":");
                            ! date1 = in1.split(".");
                            ! date2 = in1.split("-");
                            ! }
                            ! if (time.length == 2) {
                            ! time1.setHours(time[0]);
                            ! time1.setMinutes(time[1]);
                            ! }
                            ! if (time.length == 3) {
                            ! time1.setHours(time[0]);
                            ! time1.setMinutes(time[1]);
                            ! time1.setSeconds(time[2]);
                            ! }
                            ! if (date2.length == 3) {
                            ! if (date2[0].length == 4) {
                            ! time1.setFullYear(date2[0]);
                            ! } else {
                            ! time1.setFullYear("20" + date2[0]);
                            ! }
                            ! time1.setMonth(date2[1] - 1);
                            ! time1.setDate(date2[2]);
                            ! }
                            ! if (date1.length == 3) {
                            ! if (date1[0].length == 4) {
                            ! time1.setFullYear(date1[2]);
                            ! } else {
                            ! time1.setFullYear("20" + date1[2]);
                            ! }
                            ! time1.setMonth(date1[1] - 1);
                            ! time1.setDate(date1[0]);
                            ! }
                            ! if (double2[1]) {
                            ! time = double2[1].split(":");
                            ! date1 = double2[0].split(".");
                            ! date2 = double2[0].split("-");
                            ! } else {
                            ! time = in2.split(":");
                            ! date1 = in2.split(".");
                            ! date2 = in2.split("-");
                            ! }
                            ! if (time.length == 2) {
                            ! time2.setHours(time[0]);
                            ! time2.setMinutes(time[1]);
                            ! }
                            ! if (time.length == 3) {
                            ! time2.setHours(time[0]);
                            ! time2.setMinutes(time[1]);
                            ! time2.setSeconds(time[2]);
                            ! }
                            ! if (date2.length == 3) {
                            ! if (date2[0].length == 4) {
                            ! time1.setFullYear(date2[0]);
                            ! } else {
                            ! time1.setFullYear("20" + date2[0]);
                            ! }
                            ! time2.setMonth(date2[1] - 1);
                            ! time2.setDate(date2[2]);
                            ! }
                            ! if (date1.length == 3) {
                            ! if (date1[0].length == 4) {
                            ! time2.setFullYear(date1[2]);
                            ! } else {
                            ! time2.setFullYear("20" + date1[2]);
                            ! }
                            ! time2.setMonth(date1[1] - 1);
                            ! time2.setDate(date1[0]);
                            ! }
                            ! process.send(time1);
                            ! process.send(time2);
                            ! if (time1.valueOf() < now.valueOf() && time2.valueOf() > now.valueOf()) {
                            ! var timespan_57_out = true;
                            ! } else {
                            ! var timespan_57_out = false;
                            ! }
                            ! if (timespan_57_out != false && timespan_57_out != undefined && timespan_57_out != 0) {
                            ! codebox_43(data);
                            ! }
                            ! if (timespan_57_out == false || timespan_57_out == undefined || timespan_57_out == '') {
                            ! codebox_48(data);
                            ! }
                            ! };

                            @Bluefox - Ist es möglich so einen Baustein in Blockly einzubauen?

                            Grüße

                            Rantanplan

                            CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                            1 Antwort Letzte Antwort
                            0
                            • R Offline
                              R Offline
                              robsdobs
                              schrieb am zuletzt editiert von
                              #216

                              @Dutchman:

                              @apollon77:

                              Ein "schedule"-Blockly wo man eine Variable als "Zeit" übergeben kann wäre super. `

                              +1 `
                              Hallo, Danke für die Antwort (sorry das ich jetzt erst antworte).

                              Also ich hab schon mit einer richtigen URL probiert. Aber das Problem ist doch vor dem Bildschirm. Ich hab das Ergebnis (den Rückgabewert) im Parameter result erwartet, dieser ist aber im objekt response.

                              der Blockly
                              1367_blockly_request.png

                              erzeugt den code

                               require("request")('http://192.168.178.205/addons/xmlapi/rssilist.cgi', function (error, response, result) {
                                    LogObject('error', error);
                                  LogObject('result', result);
                                  LogObject('response', response);
                                  });
                              
                              

                              in response ist jetzt ein objekt

                              response={"statusCode":200,"body":"ergebniss"}
                              

                              Wie greife ich jetzt unter Blockly auf das body zu? Muss ich dazu auf eine Javascript Funktion zurückgreifen, die mir das wieder auseinander nimmt oder gibt es da eine einfache Möglichkeit?

                              Danke & Gruß

                              (LogObject ist folgende Funktion (zum importieren in Blockly):

                              ! ````
                              <block xmlns="http://www.w3.org/1999/xhtml" type="procedures_defcustomnoreturn" id="=m_sG#h6Qfd+Q`;Q/+-k" x="13" y="-87"><mutation statements="false"><arg name="text"></arg>
                              <arg name="data"></arg></mutation>
                              <field name="NAME">LogObject</field>
                              <field name="SCRIPT">CmNvbnNvbGUubG9nKFN0cmluZyh0ZXh0KSArICc9JyArIEpTT04uc3RyaW5naWZ5KGRhdGEpKTsK</field>
                              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment></block>

                              Scripte: http://forum.iobroker.net/viewtopic.php?f=23&amp;t=2799&amp;p=119565#p119565,

                              1 Antwort Letzte Antwort
                              0
                              • BluefoxB Offline
                                BluefoxB Offline
                                Bluefox
                                schrieb am zuletzt editiert von
                                #217

                                @robsdobs:

                                @Dutchman:

                                @apollon77:

                                Ein "schedule"-Blockly wo man eine Variable als "Zeit" übergeben kann wäre super. `

                                +1 `
                                Hallo, Danke für die Antwort (sorry das ich jetzt erst antworte).

                                Also ich hab schon mit einer richtigen URL probiert. Aber das Problem ist doch vor dem Bildschirm. Ich hab das Ergebnis (den Rückgabewert) im Parameter result erwartet, dieser ist aber im objekt response.

                                der Blockly

                                Blockly_request.PNG

                                erzeugt den code

                                 require("request")('http://192.168.178.205/addons/xmlapi/rssilist.cgi', function (error, response, result) {
                                      LogObject('error', error);
                                    LogObject('result', result);
                                    LogObject('response', response);
                                    });
                                    
                                

                                in response ist jetzt ein objekt

                                response={"statusCode":200,"body":"ergebniss"}
                                

                                Wie greife ich jetzt unter Blockly auf das body zu? Muss ich dazu auf eine Javascript Funktion zurückgreifen, die mir das wieder auseinander nimmt oder gibt es da eine einfache Möglichkeit?

                                Danke & Gruß

                                (LogObject ist folgende Funktion (zum importieren in Blockly):

                                ! <block xmlns="http://www.w3.org/1999/xhtml" type="procedures_defcustomnoreturn" id="=m_sG#h6Qfd+Q`;Q/+-k" x="13" y="-87"><mutation statements="false"><arg name="text"></arg> <arg name="data"></arg></mutation> <field name="NAME">LogObject</field> <field name="SCRIPT">CmNvbnNvbGUubG9nKFN0cmluZyh0ZXh0KSArICc9JyArIEpTT04uc3RyaW5naWZ5KGRhdGEpKTsK</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment></block> `
                                Es ist komisch, dass result nichts drin hat.

                                Laut request doku https://www.npmjs.com/package/request :

                                var request = require('request');
                                request('http://www.google.com', function (error, response, body) {
                                  if (!error && response.statusCode == 200) {
                                    console.log(body) // Show the HTML for the Google homepage. 
                                  }
                                })
                                

                                muss body in deinem result drin stecken.

                                Warum dass nicht so ist, weiß ich nicht, aber ich habe bei mir getestet und es geht mit "result".

                                Du kannst mit dem block nicht auf ein Objekt zugreifen. Dafür muss du mit Funktionen arbeiten.

                                1 Antwort Letzte Antwort
                                0
                                • BluefoxB Offline
                                  BluefoxB Offline
                                  Bluefox
                                  schrieb am zuletzt editiert von
                                  #218

                                  @rantanplan:

                                  Hallo

                                  Ich bin gerade dabei meine Heizungsscripte von ScriptGUI nach Blockly zu bringen.

                                  Wenn ich das durch habe, kann ich CCU.IO ausschalten :D

                                  Jetzt vermisse ich aber einen Baustein in Blockly :(

                                  Bei ScriptGUI hieß der "Timespan".

                                  Damit konnte man herausfinden ob die aktuelle Zeit innerhalb einen Zeitbereiches ist oder nicht.

                                  Timespan.png

                                  Ein erzeugtes Script von dem Baustein sieht so aus.

                                  ! function codebox_21(data) {
                                  ! var inputlocal_131_out = Start_Zeit_Bereich;
                                  ! var inputlocal_132_out = Ende_Zeit_Bereich;
                                  ! var now = new Date();
                                  ! var time1 = new Date();
                                  ! var time2 = new Date();
                                  ! var in1 = inputlocal_131_out;
                                  ! var in2 = inputlocal_132_out;
                                  ! var double1 = in1.split(" ");
                                  ! var double2 = in2.split(" ");
                                  ! var time;
                                  ! var date1;
                                  ! var date2;
                                  ! if (double1[1]) {
                                  ! time = double1[1].split(":");
                                  ! date1 = double1[0].split(".");
                                  ! date2 = double1[0].split("-");
                                  ! } else {
                                  ! time = in1.split(":");
                                  ! date1 = in1.split(".");
                                  ! date2 = in1.split("-");
                                  ! }
                                  ! if (time.length == 2) {
                                  ! time1.setHours(time[0]);
                                  ! time1.setMinutes(time[1]);
                                  ! }
                                  ! if (time.length == 3) {
                                  ! time1.setHours(time[0]);
                                  ! time1.setMinutes(time[1]);
                                  ! time1.setSeconds(time[2]);
                                  ! }
                                  ! if (date2.length == 3) {
                                  ! if (date2[0].length == 4) {
                                  ! time1.setFullYear(date2[0]);
                                  ! } else {
                                  ! time1.setFullYear("20" + date2[0]);
                                  ! }
                                  ! time1.setMonth(date2[1] - 1);
                                  ! time1.setDate(date2[2]);
                                  ! }
                                  ! if (date1.length == 3) {
                                  ! if (date1[0].length == 4) {
                                  ! time1.setFullYear(date1[2]);
                                  ! } else {
                                  ! time1.setFullYear("20" + date1[2]);
                                  ! }
                                  ! time1.setMonth(date1[1] - 1);
                                  ! time1.setDate(date1[0]);
                                  ! }
                                  ! if (double2[1]) {
                                  ! time = double2[1].split(":");
                                  ! date1 = double2[0].split(".");
                                  ! date2 = double2[0].split("-");
                                  ! } else {
                                  ! time = in2.split(":");
                                  ! date1 = in2.split(".");
                                  ! date2 = in2.split("-");
                                  ! }
                                  ! if (time.length == 2) {
                                  ! time2.setHours(time[0]);
                                  ! time2.setMinutes(time[1]);
                                  ! }
                                  ! if (time.length == 3) {
                                  ! time2.setHours(time[0]);
                                  ! time2.setMinutes(time[1]);
                                  ! time2.setSeconds(time[2]);
                                  ! }
                                  ! if (date2.length == 3) {
                                  ! if (date2[0].length == 4) {
                                  ! time1.setFullYear(date2[0]);
                                  ! } else {
                                  ! time1.setFullYear("20" + date2[0]);
                                  ! }
                                  ! time2.setMonth(date2[1] - 1);
                                  ! time2.setDate(date2[2]);
                                  ! }
                                  ! if (date1.length == 3) {
                                  ! if (date1[0].length == 4) {
                                  ! time2.setFullYear(date1[2]);
                                  ! } else {
                                  ! time2.setFullYear("20" + date1[2]);
                                  ! }
                                  ! time2.setMonth(date1[1] - 1);
                                  ! time2.setDate(date1[0]);
                                  ! }
                                  ! process.send(time1);
                                  ! process.send(time2);
                                  ! if (time1.valueOf() < now.valueOf() && time2.valueOf() > now.valueOf()) {
                                  ! var timespan_57_out = true;
                                  ! } else {
                                  ! var timespan_57_out = false;
                                  ! }
                                  ! if (timespan_57_out != false && timespan_57_out != undefined && timespan_57_out != 0) {
                                  ! codebox_43(data);
                                  ! }
                                  ! if (timespan_57_out == false || timespan_57_out == undefined || timespan_57_out == '') {
                                  ! codebox_48(data);
                                  ! }
                                  ! };

                                  @Bluefox - Ist es möglich so einen Baustein in Blockly einzubauen?

                                  Grüße `
                                  Brauchst du wirklich mit Datum oder nur Tageszeit? Weil Tageszeit ist schon implementiert.

                                  1 Antwort Letzte Antwort
                                  0
                                  • rantanplanR Online
                                    rantanplanR Online
                                    rantanplan
                                    schrieb am zuletzt editiert von
                                    #219

                                    @Bluefox:

                                    Brauchst du wirklich mit Datum oder nur Tageszeit? Weil Tageszeit ist schon implementiert. `

                                    Hallo Bluefox

                                    Danke für Deine Antwort.

                                    Du meinst wahrscheinlich den Baustein "Aktuelle Zeit ist "{}" "Uhrzeit"".

                                    Der währe gut, wenn "Uhrzeit" über eine Variable gesteuert werden könnte.

                                    So "festverdrahtete" Parameter mag ich nicht, weil man für Änderungen IMMER an das Programm muss.

                                    Das regel ich lieber über Systemvariablen.

                                    Und "Frau" will auch mal was ändern können. (Und die lasse ich besser nicht ans Programm ;) )

                                    Ähnlich "Aktuelle Zeit von "Sonnenaufgang usw." Offset (Minuten).

                                    Der "Offset" sollte variabel sein.

                                    Ich habe es Momentan mit einer Funktion gelöst, die true/false zurückgibt.

                                    {aktuelle Zeit als SS:mm} >= {Zeit_Anfang} UND {aktuelle Zeit als SS:mm} <= {Zeit_Ende}

                                    Wobei "Zeit_Anfang" und "Zeit_Ende" Systemvariablen sind.

                                    Dies funktioniert leider nicht tagesübergreifend. Also zwischen "22:00" und "05:00".

                                    Ein Vergleich mit Zeit/Datum wäre auch nicht schlecht.

                                    Z.B. von 03.03.2017 bis 20.03.2017 ist Urlaub.

                                    (Zeitangaben natürlich variabel ;) )

                                    Grüße

                                    Rantanplan

                                    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                    1 Antwort Letzte Antwort
                                    0
                                    • DutchmanD Offline
                                      DutchmanD Offline
                                      Dutchman
                                      Developer Most Active Administrators
                                      schrieb am zuletzt editiert von
                                      #220
                                      • 1 auch ich würde mich freuen wen man diese werte (zeit/timer etc) hard Coded UND als Variable setzen könnte, das macht alles flexibler/dynsmischer

                                      Sent from my iPhone using Tapatalk

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Online
                                        M Online
                                        mike2712
                                        schrieb am zuletzt editiert von
                                        #221

                                        Hallo,

                                        das ist ein super Tool, es macht richtig Spaß, aber ich fände es auch gut wenn ein Vergleich von Wochentagen möglich wäre, .B. sollen meine Jalousien am Wochenende mit anderen Zeiten wie in der Woche gesteuert werden, oder gibt es da was und ich habs nur nicht gefunden?

                                        Lg Mike

                                        ioBroker im Docker auf Qnap TS-453A 16GB Ram 4-Bay

                                        1 Antwort Letzte Antwort
                                        0
                                        • rantanplanR Online
                                          rantanplanR Online
                                          rantanplan
                                          schrieb am zuletzt editiert von
                                          #222

                                          @mike2712:

                                          Hallo,

                                          das ist ein super Tool, es macht richtig Spaß, aber ich fände es auch gut wenn ein Vergleich von Wochentagen möglich wäre, .B. sollen meine Jalousien am Wochenende mit anderen Zeiten wie in der Woche gesteuert werden, oder gibt es da was und ich habs nur nicht gefunden?

                                          Lg Mike `
                                          Hallo

                                          Schau Dir mal den Baustein "Aktuelle Zeit als xxx" unter "Datum und Zeit".

                                          Da kannst Du z.B. Wochentag als Nummer auswählen.

                                          Wochentag 1 = Montag …. Wochentag 7 = Sonntag.

                                          Grüße

                                          Rantanplan

                                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                          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

                                          831

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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