Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Vorlage] Flexibles Timerskript + Vis

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Flexibles Timerskript + Vis

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

      @gelberlemmy
      Danke für den Hinweis. Den Adapter kannte ich noch gar nicht und habe ihn gleich ausprobiert.
      Schalten kann ich ihn damit, aber ich bekommen keine Anzeige der Energiedaten. Muss ich da was besonderes einstellen?
      LG Rainer

      gelberlemmy 1 Reply Last reply Reply Quote 0
      • P
        Pittini Developer @DirkS last edited by

        @DirkS sagte in [Vorlage] Flexibles Timerskript + Vis:

        Ja, vielen Dank für den Hinweis bzgl. der Channel. Dies hatte ich nun korrigiert. Nun erhalte ich ein anderen Fehler. Bin mir nicht sicher, ob dies mit dem letzten Update des JS Script Adapter vielleicht zusammenhängt?
        Es gibt noch einen zweiten Fehler, der im Zusammenhang mit createStates steht. Der ist in Zeile 260.

        51174b33-8626-4a79-8e50-4139eafbd7b2-grafik.png

        Ein Fehler ist erst dann ein Fehler wenn er rote Einträge im Log erzeugt. Nur weil die Syntaxprüfung mault is das noch lang kein Fehler, kannste ignorieren.

        D 1 Reply Last reply Reply Quote 0
        • D
          DirkS @Pittini last edited by

          @Pittini
          Da fehlte dann wohl der wichtigere Teil:
          5489b686-a116-438f-b9be-aa2b5cf6a1f8-grafik.png

          P 1 Reply Last reply Reply Quote 0
          • P
            Pittini Developer @DirkS last edited by

            @DirkS sagte in [Vorlage] Flexibles Timerskript + Vis:

            Da fehlte dann wohl der wichtigere Teil:

            DAS ist ein Fehler, ja. Aber die Ursache ist trotzdem nicht in dem unterkringelten Teil.
            Wie der Fehler aussieht.....vermute ich jetzt mal...das Du entweder die js Instanz nach der Änderung an den Aufzählungen nicht neu gestartet hast, oder irgendwo ein leeres Feld als TimerTarget definiert hast.

            Zeig doch mal ein komplettes startlog vom Skript und nen Screenshot von nem Datenpunkt wo die Funktion TimerTarget gesetzt ist.

            D 1 Reply Last reply Reply Quote 0
            • D
              DirkS @Pittini last edited by DirkS

              @Pittini
              Hier der Log vom Starten des Skripts. Ich hatte vorher einmal die Einträge aus javascript.0.Timer. gelöscht.


              javascript.0 2020-12-08 13:53:48.779 error (14747) at processImmediate (timers.js:658:5)
              javascript.0 2020-12-08 13:53:48.779 error (14747) at tryOnImmediate (timers.js:676:5)
              javascript.0 2020-12-08 13:53:48.779 error (14747) at runCallback (timers.js:705:18)
              javascript.0 2020-12-08 13:53:48.778 error (14747) at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37)
              javascript.0 2020-12-08 13:53:48.778 error (14747) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:472:25)
              javascript.0 2020-12-08 13:53:48.778 error (14747) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1070:38)
              javascript.0 2020-12-08 13:53:48.778 error (14747) at Object.<anonymous> (script.js.TimerSwitch:1099:130)
              javascript.0 2020-12-08 13:53:48.778 error (14747) at DetermineNextActiveAstroDay (script.js.TimerSwitch:520:32)
              javascript.0 2020-12-08 13:53:48.777 error (14747) at CheckTodayAstroIsOver (script.js.TimerSwitch:630:21)
              javascript.0 2020-12-08 13:53:48.777 error (14747) at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1324:65)
              javascript.0 2020-12-08 13:53:48.777 error (14747) Error in callback: TypeError: Cannot read property 'toLowerCase' of undefined
              javascript.0 2020-12-08 13:53:48.771 warn (14747) at processImmediate (timers.js:658:5)
              javascript.0 2020-12-08 13:53:48.771 warn (14747) at tryOnImmediate (timers.js:676:5)
              javascript.0 2020-12-08 13:53:48.771 warn (14747) at runCallback (timers.js:705:18)
              javascript.0 2020-12-08 13:53:48.771 warn (14747) at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37)
              javascript.0 2020-12-08 13:53:48.770 warn (14747) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:472:25)
              javascript.0 2020-12-08 13:53:48.770 warn (14747) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1070:38)
              javascript.0 2020-12-08 13:53:48.770 warn (14747) at Object.<anonymous> (script.js.TimerSwitch:1099:84)
              javascript.0 2020-12-08 13:53:48.769 warn (14747) getState "javascript.0.Timer.Template.TimerChoice" not found (3)
              javascript.0 2020-12-08 13:53:48.769 warn (14747) at processImmediate (timers.js:658:5)
              javascript.0 2020-12-08 13:53:48.769 warn (14747) at tryOnImmediate (timers.js:676:5)
              javascript.0 2020-12-08 13:53:48.769 warn (14747) at runCallback (timers.js:705:18)
              javascript.0 2020-12-08 13:53:48.768 warn (14747) at Immediate.setImmediate (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:5384:37)
              javascript.0 2020-12-08 13:53:48.768 warn (14747) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:472:25)
              javascript.0 2020-12-08 13:53:48.768 warn (14747) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1070:38)
              javascript.0 2020-12-08 13:53:48.768 warn (14747) at Object.<anonymous> (script.js.TimerSwitch:1097:27)
              javascript.0 2020-12-08 13:53:48.764 warn (14747) getState "javascript.0.Timer.Template.TimerChoice" not found (3)
              javascript.0 2020-12-08 13:53:48.746 info (14747) script.js.TimerSwitch: Names are: G_Licht,K_Licht,,HWR_Zirkulationspumpe
              javascript.0 2020-12-08 13:53:48.746 info (14747) script.js.TimerSwitch: 4 Targets found - Targets are: zigbee.1.XXXXXXfffe3668fb.state,zigbee.1.XXXXXXXX.state,mqtt-client.0.cmnd.FHEM.IT_V3_2590a6c0.state,zigbee.1.XXXXXXXXX.st
              javascript.0 2020-12-08 13:53:48.745 info (14747) script.js.TimerSwitch: GetParentId(Targets[y])=zigbee.1.XXXXXXXX
              javascript.0 2020-12-08 13:53:48.745 info (14747) script.js.TimerSwitch: GetParentId(Targets[y])=mqtt-client.0.cmnd.FHEM.IT_V3_2590a6c0
              javascript.0 2020-12-08 13:53:48.744 info (14747) script.js.TimerSwitch: GetParentId(Targets[y])=zigbee.1.XXXXXXXXXX
              javascript.0 2020-12-08 13:53:48.741 info (14747) script.js.TimerSwitch: GetParentId(Targets[y])=zigbee.1.XXXXXXXXX
              javascript.0 2020-12-08 13:53:48.741 warn (14747) at process._tickCallback (internal/process/next_tick.js:68:7)
              javascript.0 2020-12-08 13:53:48.740 warn (14747) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
              javascript.0 2020-12-08 13:53:48.740 warn (14747) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
              javascript.0 2020-12-08 13:53:48.740 warn (14747) at client.set.err (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:547:55)
              javascript.0 2020-12-08 13:53:48.740 warn (14747) at script.js.TimerSwitch:211:17
              javascript.0 2020-12-08 13:53:48.739 warn (14747) at main (script.js.TimerSwitch:460:5)
              javascript.0 2020-12-08 13:53:48.739 warn (14747) at init (script.js.TimerSwitch:421:15)
              javascript.0 2020-12-08 13:53:48.738 warn (14747) getState "javascript.0.Timer.MsgMute" not found (3)
              javascript.0 2020-12-08 13:53:48.738 warn (14747) at process._tickCallback (internal/process/next_tick.js:68:7)
              javascript.0 2020-12-08 13:53:48.738 warn (14747) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
              javascript.0 2020-12-08 13:53:48.738 warn (14747) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
              javascript.0 2020-12-08 13:53:48.737 warn (14747) at client.set.err (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:547:55)
              javascript.0 2020-12-08 13:53:48.737 warn (14747) at script.js.TimerSwitch:211:17
              javascript.0 2020-12-08 13:53:48.737 warn (14747) at main (script.js.TimerSwitch:460:5)
              javascript.0 2020-12-08 13:53:48.736 warn (14747) at init (script.js.TimerSwitch:419:18)
              javascript.0 2020-12-08 13:53:48.731 warn (14747) getState "javascript.0.Timer.TimerCount" not found (3)
              javascript.0 2020-12-08 13:53:47.058 info (14747) script.js.TimerSwitch: registered 0 subscriptions and 0 schedules
              javascript.0 2020-12-08 13:53:47.044 info (14747) script.js.TimerSwitch: Starting TimerSkript V2.1.8
              javascript.0 2020-12-08 13:53:46.922 info (14747) Start javascript script.js.TimerSwitch
              javascript.0 2020-12-08 13:53:42.692 info (14747) Stop script script.js.TimerSwitch
              javascript.0 2020-12-08 13:48:36.652 info (14747) received all states
              javascript.0 2020-12-08 13:48:35.099 info (14747) received all objects
              javascript.0 2020-12-08 13:48:33.782 info (14747) requesting all objects
              javascript.0 2020-12-08 13:48:33.779 info (14747) requesting all states
              javascript.0 2020-12-08 13:48:33.641 info (14747) starting. Version 4.10.8 in /opt/iobroker/node_modules/iobroker.javascript, node: v10.19.0, js-controller: 3.1.6

              P 1 Reply Last reply Reply Quote 0
              • P
                Pittini Developer @DirkS last edited by

                @DirkS sagte in [Vorlage] Flexibles Timerskript + Vis:

                Ich hatte vorher einmal die Einträge aus javascript.0.Timer. gelöscht.

                Das Skript findet etliche Datenpunkte nicht, hast Du da was manuell aus der internen Struktur gelöscht?

                javascript.0 2020-12-08 13:53:48.731 warn (14747) getState "javascript.0.Timer.TimerCount" not found (3)
                javascript.0 2020-12-08 13:53:48.738 warn (14747) getState "javascript.0.Timer.MsgMute" not found (3)
                javascript.0 2020-12-08 13:53:48.764 warn (14747) getState "javascript.0.Timer.Template.TimerChoice" not found (3)

                Lösch mal den kompletten Timerchannel , der wird dann beim nächsten Skriptstart wieder neu und richtig angelegt. Andere Probleme seh ich eigentlich nicht, Deine 4 Targets wurden erkannt. Grundsätzlich NIE einfach manuell was aus der Struktur löschen, nur über die entsprechende Löschfunktion im Skript bzw. im Vis.

                D 1 Reply Last reply Reply Quote 0
                • D
                  DirkS @Pittini last edited by

                  @Pittini
                  Seltsam, hatte nichts anderes vorher auch gemacht. Also Timer Channel gelöscht und JS Adapter neu gestartet. Nun sind keine Fehler mehr im Log vorhanden.
                  Danke für die Hilfe über die Straße. 😊

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    DirkS @DirkS last edited by

                    @Pittini
                    Ein kleinen Fehler habe ich noch gefunden. Den letzten Timer (Timer 1) kann man nicht löschen.

                    P 1 Reply Last reply Reply Quote 0
                    • P
                      Pittini Developer @DirkS last edited by

                      @DirkS sagte in [Vorlage] Flexibles Timerskript + Vis:

                      @Pittini
                      Ein kleinen Fehler habe ich noch gefunden. Den letzten Timer (Timer 1) kann man nicht löschen.

                      Its not a bug, its a feature. Wozu braucht man ein Timerskript wenn man keinen Timer drinhat?

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        DirkS @Pittini last edited by

                        @Pittini
                        Wenn man zum Testen erst einmal ein paar Male auf den plus Knopf gedrückt hat und alles wieder auf Urzustand zurück soll.

                        1 Reply Last reply Reply Quote 0
                        • gelberlemmy
                          gelberlemmy @Rene55 last edited by

                          @Rene55 sagte in [Vorlage] Flexibles Timerskript + Vis:

                          @gelberlemmy
                          Danke für den Hinweis. Den Adapter kannte ich noch gar nicht und habe ihn gleich ausprobiert.
                          Schalten kann ich ihn damit, aber ich bekommen keine Anzeige der Energiedaten. Muss ich da was besonderes einstellen?
                          LG Rainer

                          Nein eigentlich nicht, da die Datenpunkte ja automatisch angelegt werden. Es sei denn die Steckdosen haben keine Energiemessung.

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

                            @gelberlemmy
                            Doch, die Gosund SP1 haben Energiemessung und hatten die Datenpunkte unter mqtt auch angelegt. Mit dem Sonoff-Adapter sind nur Datenpunkte fürs Schalten und Zustand/Erreichbarkeit vorhanden. DPs für Energie stellen sich auch nach mehrfachen Versuchen nicht ein.
                            Nachtrag: Ich habs gefunden Link Text Post#15. Jetzt kommen auch Energiedaten. Danke
                            LG Rainer

                            1 Reply Last reply Reply Quote 0
                            • Q
                              quorle last edited by

                              Script ist eingefügt und läuft wunderbar. Widget ist auch verständlich. Nur habe auch auch ein kleines Problem. Bei mir ändern sich die Farben nicht, obwohl der State entweder true oder false ist.

                              Unbenannt_1.PNG

                              Dominik F. P 2 Replies Last reply Reply Quote 0
                              • Dominik F.
                                Dominik F. @quorle last edited by

                                @quorle

                                Wird denn überhaupt richtig geschaltet also funktioniert das ?

                                1 Reply Last reply Reply Quote 0
                                • P
                                  Pittini Developer @quorle last edited by

                                  @quorle sagte in [Vorlage] Flexibles Timerskript + Vis:

                                  Script ist eingefügt und läuft wunderbar. Widget ist auch verständlich. Nur habe auch auch ein kleines Problem. Bei mir ändern sich die Farben nicht, obwohl der State entweder true oder false ist.

                                  Schwarze Katze in der Nacht! Gugg mal in das html vom javascript.0.Timer.TimerOverviewTable wenn da Farbcodes drinstehen liegts am Vis. CSS und Script fürs MaterialDesign sind in den Vis Eigenschaften vorhanden?

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

                                    Hallo,

                                    ich bekomme derzeit den View nicht ins VIS importiert, kann mir da jemand einen Rat geben, was ich falsch mache?
                                    Screenshot 2021-01-18 162535.jpg

                                    P F 2 Replies Last reply Reply Quote 0
                                    • P
                                      Pittini Developer @FuXXz2 last edited by

                                      @fuxxz2 sagte in [Vorlage] Flexibles Timerskript + Vis:

                                      Hallo,

                                      ich bekomme derzeit den View nicht ins VIS importiert, kann mir da jemand einen Rat geben, was ich falsch mache?
                                      Screenshot 2021-01-18 162535.jpg

                                      Erklär doch erst mal was genau Du machst. Woher soll ich sonst wissen was Du falsch machst?

                                      1 Reply Last reply Reply Quote 0
                                      • F
                                        fastfoot @FuXXz2 last edited by

                                        @fuxxz2 sagte in [Vorlage] Flexibles Timerskript + Vis:

                                        ich bekomme derzeit den View nicht ins VIS importiert

                                        das Widget muss in eine bestehende View als Widget importiert werden

                                        F 1 Reply Last reply Reply Quote 1
                                        • F
                                          FuXXz2 @fastfoot last edited by

                                          @fastfoot oh man bin ich blöd 🙂 Das wars^^

                                          1 Reply Last reply Reply Quote 0
                                          • P
                                            Papabaer last edited by

                                            Hallo zusammen, ich habe mir das Skript heute auch installiert und es läuft auf Anhieb "fast" perfekt.
                                            Zunächst erst einmal ganz herzlichen Dank an @Pittini für dieses Skript. So kann auch meine Frau am Tablet einen Timer einstellen ohne dass ich im Blockly was bauen muss.

                                            Ich habe mit dem Script nur ein - sicherlich nur kleines - Problem. Vielleicht habe ich auch was übersehen beim einrichten. Wenn ich einen Timer einstelle für heute 17:00Uhr einschalten und 18:00Uhr ausschalten, dann schaltet das Script - mit exact 1 Stunde Verspätung. Ich vermute das liegt an Sommerzeit / Winterzeit?? Mache ich einen Denkfehler oder habe ich vergessen das irgendwo einzustellen??

                                            Danke im voraus,
                                            Bernd

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            955
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript template
                                            40
                                            500
                                            83477
                                            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