Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Blockly heute/morgen frei zur Rollo-/Heizungsst.

    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

    [Vorlage] Blockly heute/morgen frei zur Rollo-/Heizungsst.

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

      Hallo,

      ich habe die Version 4.0.7 installiert.

      DIe möglichen Fehler von Rantanplan habe ich nicht gemacht (leider, wäre ja einfacher gewesen)

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

        So,

        ein Fehler von mir war, dass ich nicht bis 0:00Uhr gewartet habe.

        Ich habe nun die Zeit einmal zum testen verstellt und nun ist keine Fehlermeldung endstanden.

        Wo kann ich nun den Tag auslesen, leider habe ich nichts unter Objekte –> javascript.0 gefunden.

        Entschuldigt bitte, dass ich noch viele Fragen habe.

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

          @Fox1985:

          Entschuldigt bitte, dass ich noch viele Fragen habe. `
          Dafür ist ja das Forum ja da.

          Die Datenpunke werden unter der jeweiligen JavaScript Instanz angelegt.

          wenn Du nur eine Instanz hast, dann unter Javascript.0.

          Eventuell mal "Objekte" aktualisieren.

          Oder im Blockly nochmal auf die Auswahl von "frei_heute" oder "frei_morgen" anklicken.

          Im Auswahlfenster siehst Du dann den Pfad.

          Grüße

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

            Er melde bei mir im Log: State "javascript.0.frei_heute" not found

            Er sollte doch eigentlich diesen State von selbst erstellen, wenn er noch nicht vorhanden ist.

            Oder habe ich das falsch verstanden?

            Die Instanz ist richtig mit javascript.0

            ich hänge auch noch ein Bild von meinen Objekten an.

            javascript.0.Arbeitstag ist aus meiner alten Rolladensteuerung

            javascript.0	2019-01-06 21:22:00.065	warn	at Timer.listOnTimeout (timers.js:290:5)
            javascript.0	2019-01-06 21:22:00.065	warn	at tryOnTimeout (timers.js:323:5)
            javascript.0	2019-01-06 21:22:00.065	warn	at ontimeout (timers.js:498:11)
            javascript.0	2019-01-06 21:22:00.064	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
            javascript.0	2019-01-06 21:22:00.064	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
            javascript.0	2019-01-06 21:22:00.064	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
            javascript.0	2019-01-06 21:22:00.063	warn	at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:920:34)
            javascript.0	2019-01-06 21:22:00.063	warn	at Object. <anonymous>(script.js.heute_frei__morgen_frei:27:5)
            javascript.0	2019-01-06 21:22:00.061	warn	State "javascript.0.frei_heute" not found
            javascript.0	2019-01-06 21:22:00.061	warn	at Timer.listOnTimeout (timers.js:290:5)
            javascript.0	2019-01-06 21:22:00.060	warn	at tryOnTimeout (timers.js:323:5)
            javascript.0	2019-01-06 21:22:00.060	warn	at ontimeout (timers.js:498:11)
            javascript.0	2019-01-06 21:22:00.060	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
            javascript.0	2019-01-06 21:22:00.059	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
            javascript.0	2019-01-06 21:22:00.059	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
            javascript.0	2019-01-06 21:22:00.059	warn	at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:920:34)
            javascript.0	2019-01-06 21:22:00.058	warn	at Object. <anonymous>(script.js.heute_frei__morgen_frei:23:5)
            javascript.0	2019-01-06 21:22:00.056	warn	State "javascript.0.frei_heute" not found
            javascript.0	2019-01-06 21:22:00.056	warn	at Timer.listOnTimeout (timers.js:290:5)
            javascript.0	2019-01-06 21:22:00.055	warn	at tryOnTimeout (timers.js:323:5)
            javascript.0	2019-01-06 21:22:00.055	warn	at ontimeout (timers.js:498:11)
            javascript.0	2019-01-06 21:22:00.055	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
            javascript.0	2019-01-06 21:22:00.054	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
            javascript.0	2019-01-06 21:22:00.054	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
            javascript.0	2019-01-06 21:22:00.054	warn	at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:920:34)
            javascript.0	2019-01-06 21:22:00.053	warn	at Object. <anonymous>(script.js.heute_frei__morgen_frei:7:7)
            javascript.0	2019-01-06 21:22:00.052	warn	getState "javascript.0.frei_morgen" not found (3)
            javascript.0	2019-01-06 21:22:00.051	warn	at Timer.listOnTimeout (timers.js:290:5)
            javascript.0	2019-01-06 21:22:00.051	warn	at tryOnTimeout (timers.js:323:5)
            javascript.0	2019-01-06 21:22:00.050	warn	at ontimeout (timers.js:498:11)
            javascript.0	2019-01-06 21:22:00.050	warn	at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
            javascript.0	2019-01-06 21:22:00.050	warn	at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
            javascript.0	2019-01-06 21:22:00.050	warn	at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
            javascript.0	2019-01-06 21:22:00.049	warn	at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:920:34)
            javascript.0	2019-01-06 21:22:00.048	warn	at Object. <anonymous>(script.js.heute_frei__morgen_frei:5:3)
            javascript.0	2019-01-06 21:22:00.045	warn	State "javascript.0.frei_heute" not found</anonymous></anonymous></anonymous></anonymous>
            

            Viele Grüße
            7070_screenshot_2019-01-06_objects_-_iobroker.jpg

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

              @Fox1985:

              Er melde bei mir im Log: State "javascript.0.frei_heute" not found

              Er sollte doch eigentlich diesen State von selbst erstellen, wenn er noch nicht vorhanden ist.

              Oder habe ich das falsch verstanden?

              Die Instanz ist richtig mit javascript.0 `
              Der Ablauf ist:

              Script starten (Datenpunke werden angelegt)

              Script stoppen

              Script starten (Datenpunke sind vorhanden)

              Die Datenpunkte befinden sich dann unter javascript.instanz.

              NICHT unter javascript.instanz.scriptEnabled. Da gehören keine eigenen Datenpunkte hin.

              Habe gerade mal mit Script Engine v4.0.7 Datenpunkte angelegt. Keine Probleme.

              Woher kommt Dein Verzeichnis js-controler@1.4? Ist bei mit nicht vorhanden.

              Grüße

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

                Hallo Rantanplan,

                ich habe es nun noch einmal gelöscht und neu erstellt.

                Nun funktioniert es, ich habe keine Ahnung was da schief gegangen ist.

                Ich danke aber für die viele Unterstütung.

                Woher genau js-controler@1.4 kommt kann ich dir nicht sagen.

                Viele Grüße

                1 Reply Last reply Reply Quote 0
                • D
                  djsirius last edited by djsirius

                  Moin.

                  Ich würde gerne dieses Blockly-Script benutzen um festzustellen, ob ein Feiertag vorliegt oder nicht.

                  Ich bin der Meinung, dass ich das Script genau so nachgebaut hab, wie rantanplan es eingestellt hat.

                  Beim Datenpunkt heute_frei bekomme ich auch einen Wert, aber beim Datenpunkt morgen_frei steht kein Wert.

                  Was habe ich falsch gemacht??

                  Ich finde den Fehler nicht!

                  Vielleicht kann mir jemand helfen!?

                  Vielen Dank!

                  Gruß
                  Sirius

                  2019-02-15 07_13_39-objects - ioBroker.png

                  2019-02-15 07_14_40-javascript - ioBroker.png

                  rantanplan H 2 Replies Last reply Reply Quote 0
                  • rantanplan
                    rantanplan @djsirius last edited by

                    @djsirius sagte in [Vorlage] Blockly heute frei / morgen frei zur Rollo- u. Heizungssteuerung:

                    Was habe ich falsch gemacht??

                    Ich finde den Fehler nicht!

                    Vielleicht kann mir jemand helfen!?

                    Habe etwas Geduld☺
                    Das Script sollte immer NACH 24 Uhr getriggert werden. Auf jedenfall nachdem der Feiertags Adapter sich auch aktualisiert hat.
                    Lasse es mal einfach laufen. Am besten mit den original Einstellungen.
                    Wenn es nach zwei Tagen immer noch keine Werte bringt, läuft etwas falsch.
                    Kurze Rückmeldung wäre schön.

                    Grüße

                    1 Reply Last reply Reply Quote 0
                    • D
                      djsirius last edited by

                      Hallo rantanplan,

                      muss ich dem Script sagen, wann es getriggert wird? Ich habe es ja schon über 2 Tage am laufen, und morgen ist Samstag, also müsste doch bei morgen_frei true als Wert stehen, oder nicht?

                      Vielen Dank für deine schnelle Antwort. 🙂

                      Gruß
                      Sirius

                      rantanplan 1 Reply Last reply Reply Quote 0
                      • L
                        lesiflo Most Active last edited by

                        Hi,
                        ich hänge mich hier mal mit dran. Hier mal mein Ansatz. Ich habe das ganze noch um die Urlaubstage erweitert
                        welche ich in meinen Google-Kalender eingetragen habe. Bei mir wird auch nur ein Wert für Frei oder nicht Frei
                        angezeigt, ansonsten ist dem von rantanplan ähnlich.

                        82d1f2e2-41a3-4304-9ad5-11390fa8d0fc-image.png

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

                          @djsirius sagte in [Vorlage] Blockly heute frei / morgen frei zur Rollo- u. Heizungssteuerung:

                          Hallo rantanplan,

                          muss ich dem Script sagen, wann es getriggert wird? Ich habe es ja schon über 2 Tage am laufen, und morgen ist Samstag, also müsste doch bei morgen_frei true als Wert stehen, oder nicht?

                          Vielen Dank für deine schnelle Antwort. 🙂

                          Gruß
                          Sirius

                          Natürlich muss man einem Trigger sagen wann er reagieren soll.
                          Importiere am Besten das Original noch mal und speicher es ohne Ähnderung ab und starte es.
                          Der Trigger startet dann immer um 00:01 Uhr.
                          FRÜHESTENS morgenfrüh um 00:02 Uhr sehen wir dann ob es geklappt hat.

                          !!! Den Chron-Trigger am besten NICHT editieren. Bei einigen neueren Script Engines gibt es Probleme !!!

                          Grüße

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

                            @lesiflo sagte in [Vorlage] Blockly heute frei / morgen frei zur Rollo- u. Heizungssteuerung:

                            Hi,
                            ich hänge mich hier mal mit dran. Hier mal mein Ansatz. Ich habe das ganze noch um die Urlaubstage erweitert
                            welche ich in meinen Google-Kalender eingetragen habe. Bei mir wird auch nur ein Wert für Frei oder nicht Frei
                            angezeigt, ansonsten ist dem von rantanplan ähnlich.

                            Hallo lesiflo

                            Schlechte Idee die Werte nochmals ausserhalb von einem anderen Trigger ändern zu lassen.
                            Der Ablauf in dem Script ist schon wichtig.

                            Deinen Urlaub würde ich UNTER dem Bereich "Feiertage" einfügen.
                            Ich arbeite nicht mit "ical". Aber ich glaube mal gelesen zu haben, dass es da keinen "Urlaub_morgen" gibt.
                            Würde also nicht für die abendliche Steuerung funktionieren, weil man nicht abfragen kann ob morgen Urlaub ist,

                            Für die morgendliche Steuerung würde es gehen, wenn Du einen Falls-Block unter die Feiertage-Blöcke setzt,

                            Falls Wert von ical.0.events.Urlaub = wahr
                            steuere Frei_heute mit wahr

                            Grüße

                            1 Reply Last reply Reply Quote 0
                            • L
                              lesiflo Most Active last edited by lesiflo

                              Warum schlechte Idee? Und was ist da außerhalb von einem anderen Trigger?
                              Das Script setzt "Frei_heute" auf wahr sobald nur eine der drei Bedingungen auf wahr ist. Ansonsten bleibt es auf falsch. Ich habe im ical meine Urlaubstage eingefügt und als Event definiert. Und warum sollte das für die abendliche Steuerung nicht funktionieren? Wozu brauche ich dafür zu wissen ob ich morgen Urlaub habe? Ich setze das ganze schon lange so für meine Rolladensteuerung über Homematic ein und bisher ohne Probleme.

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

                                @lesiflo sagte in [Vorlage] Blockly heute frei / morgen frei zur Rollo- u. Heizungssteuerung:

                                Warum schlecht Idee? Und was ist da außerhalb von einem anderen Trigger?

                                Läuft das original Script bei Dir?
                                Wenn Ja, läuft im Origial ein Trigger UND in Deinem Blockly ein Trigger, der dann von außerhalb des Originals die Variablen ändert.
                                Läuft nur Deines, ist es egal.

                                Das Script setzt Frei_heute auf wahr sobald nur eine der drei Bedingungen auf wahr ist. Ansonsten bleibt es auf falsch. Ich habe im ical meine Urlaubstage eingefügt und als Event deffiniert. Und warum sollte das für die abendliche Steuerung nicht funktionieren? Wozu brauche ich dafür zu wissen ob ich morgen Urlaub habe?

                                Warum willst Du wissen ob heute frei oder Urlaub ist?
                                Meine Begründung, warum ich wissen möchte ob heute und/oder morgen frei ist, habe ich im ersten Beitrag beschrieben.

                                Grüße

                                1 Reply Last reply Reply Quote 0
                                • L
                                  lesiflo Most Active last edited by lesiflo

                                  Nein bei mir läuft nur meine Lösung. Ich habe es ja auch nur aufgeführt falls jemand noch seinen Urlaub oder sonstige freie Tage mit einbauen möchte. Das geht nämlich nur über einen externen Kalender.
                                  Ok, für eine Anzeige wie du sie hast ist schon notwendig ob morgen frei ist oder nicht, für die Steuerung von anderen Programmen aber nicht.

                                  LG

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    Spitfire4all @rantanplan last edited by Spitfire4all

                                    @rantanplan Irgendwie kann ich das Script nicht importieren. Eine Idee warum ?

                                    Gruß
                                    HDM

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

                                      @Spitfire4all
                                      Da war irgendwie alles doppelt drin. Habe die Datei erneuert. Versuche es nochmal.
                                      Danke für den Hinweis.

                                      Grüße

                                      S 1 Reply Last reply Reply Quote 0
                                      • S
                                        Spitfire4all @rantanplan last edited by

                                        @rantanplan
                                        Läuft wie geschmiert.
                                        Danke.

                                        Gruß
                                        HDM

                                        1 Reply Last reply Reply Quote 0
                                        • H
                                          hotspot_2 @djsirius last edited by hotspot_2

                                          Hallo zusammen,

                                          ich habe bei mir dieses Skript auch installiert, und die Variable "morgen_frei" wird nicht initialisiert automatisch. Inititiert man die Variable z.B. manuell dann funktioniert das Skript einwandfrei aus meiner Sicht.

                                          Würde es Sinn machen es so abzuändern:

                                          1e2379d8-f8ca-4c85-a586-2ecfeeed8916-image.png

                                          Ich meine das sollte hinhauen auch wenn morgen dann ein freier Tag wäre sollte der dann richtig gesetzt werden.

                                          Was meint ihr?

                                          (Sorry für's aus der Versenkung holen, ich finde das Skript aber echt gut für einige Anwendungsfälle).

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

                                            @hotspot_2 sagte in [Vorlage] Blockly heute/morgen frei zur Rollo-/Heizungsst.:

                                            Hallo zusammen,

                                            ich habe bei mir dieses Skript auch installiert, und die Variable "morgen_frei" wird nicht initialisiert automatisch. Inititiert man die Variable z.B. manuell dann funktioniert das Skript einwandfrei aus meiner Sicht.

                                            Würde es Sinn machen es so abzuändern:

                                            1e2379d8-f8ca-4c85-a586-2ecfeeed8916-image.png

                                            Ich meine das sollte hinhauen auch wenn morgen dann ein freier Tag wäre sollte der dann richtig gesetzt werden.

                                            Was meint ihr?

                                            Kann man so machen. Habe ich "damals" wohl übersehen.
                                            Ich würde die Abfrage eventuell ausserhalb des Triggers machen. Dann wird es nur einmal beim Script-Start ausgeführt.

                                            (Sorry für's aus der Versenkung holen, ich finde das Skript aber echt gut für einige Anwendungsfälle).

                                            Schön dass es gefällt 😊

                                            Grüße

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            913
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly template
                                            7
                                            24
                                            5017
                                            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