Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Astro sunrise funktioniert nicht

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Astro sunrise funktioniert nicht

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

      Guten Morgen,

      Was meinst Du genau mit Schaltpunkt neu anlegen? Dann würde ich das auch mal ausprobieren.

      Beste Grüsse,

      Bentschik

      1 Reply Last reply Reply Quote 0
      • arteck
        arteck Developer Most Active last edited by

        lösche das Script mit Sunrise komplett und lege es nochmal an..

        achso ich habe 2 Scripte .. einmal für Sunrise und einmal für Sunset .. nicht beide Zustände in einem Script

        ich hab 2 javascript instanzen.. hab es erst in der einen dann in die andere geschoben

        1 Reply Last reply Reply Quote 0
        • B
          bentschik last edited by

          OK, alles klar, werde ich ausprobieren. Heute morgen hat es wieder mal geklappt mit dem Sonnenaufgang. Ich habe die Javascript-Instanz gestern neugestartet und dann nicht wieder angerührt.

          1 Reply Last reply Reply Quote 0
          • M
            mcmuller last edited by

            Hallo Forum,

            –---offtopic ON----

            ...mein erster Post hier, deshalb erstmal "Danke" für dieses schöne Stück Software! Ich habe seit einiger Zeit mit fhem, homematic, mqtt, arduino(s), etc... Erfahrung gesammelt. Da wir hier (Portugal) gerade groß renovieren, sah ich die Chance, mal neu anzufangen und meine Wahl fiel auf io.Broker.

            ----offtopic OFF-----

            Auch bei mir hakt die astro-Funktion.

            schedule({astro: "sunrise", shift: 0}, function () {
              setState("mqtt.0.garageduino.relais3"/*garageduino/relais3.aussenlicht*/, 'off');
              sendTo("pushover", "send", {
                 message: 'Sonnenaufgang!',
                 sound: "bike"
              });
            });
            schedule({astro: "sunset", shift: 0}, function () {
              setState("mqtt.0.garageduino.relais3"/*garageduino/relais3.aussenlicht*/, 'on');
              sendTo("pushover", "send", {
                 message: 'Sonnenuntergang!',
                 sound: "bike"
              });
            });
            

            …schaltet bei mir nicht (natürlich funktioniert es ohne astro...)

            var sunset = getAstroDate("sunset");
            var sunrise = getAstroDate("sunrise");
            
            log("Sunset  today at " + sunset.toLocaleTimeString());
            log("Sunrise  today at " + sunrise.toLocaleTimeString());
            
            

            liefert bei mir brav

            15:00:42.724	[info]	javascript.0 Start javascript script.js.common.Skript1
            15:00:42.724	[info]	javascript.0 script.js.common.Skript1: Sunset today at 20:50:04
            15:00:42.725	[info]	javascript.0 script.js.common.Skript1: Sunrise today at 06:16:38
            15:00:42.726	[info]	javascript.0 script.js.common.Skript1: registered 0 subscriptions and 0 schedules
            

            irgendweche Idee, was ich hier falsch mache?

            Grüße,

            mcmuller

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

              Auf meinem Raspberry Pi funktioniert es zuverlässig.

              schedule({astro: "sunrise", shift: 0}, function () {
                  log('Sonnenaufgang');
              });
              
              schedule({astro: "sunset", shift: 0}, function () {
                  log('Sonnenuntergang');
              });
              
              

              Log von gestern und heute:

              2017-06-03 02:08:13.968  - [32minfo[39m: host.rpihm Delete log file iobroker.2017-05-27.log
              2017-06-03 04:49:26.042  - [32minfo[39m: javascript.0 script.js.common.Test: Sonnenaufgang
              2017-06-03 08:08:22.955  - [32minfo[39m: host.rpihm Update repository "fast-online" under "http://download.iobroker.net/sources-dist.json"
              2017-06-03 20:08:22.958  - [32minfo[39m: host.rpihm Update repository "fast-online" under "http://download.iobroker.net/sources-dist.json"
              2017-06-03 21:22:36.630  - [32minfo[39m: javascript.0 script.js.common.Test: Sonnenuntergang
              2017-06-04 02:08:14.084  - [32minfo[39m: host.rpihm Delete log file iobroker.2017-05-28.log
              2017-06-04 04:48:42.974  - [32minfo[39m: javascript.0 script.js.common.Test: Sonnenaufgang
              2017-06-04 08:08:23.001  - [32minfo[39m: host.rpihm Update repository "fast-online" under "http://download.iobroker.net/sources-dist.json"
              
              
              1 Reply Last reply Reply Quote 0
              • Dutchman
                Dutchman Developer Most Active Administrators last edited by

                Hi there

                Hast aber attitude/longtitude eingestellt ?

                (Also Koordinaten bei Admin settings)

                –-----------------------

                Send from mobile device

                1 Reply Last reply Reply Quote 0
                • M
                  mcmuller last edited by

                  Danke für Eure Kommentare!

                  @paul53 Schön, daß es bei Dir läuft - mir mir halt eben nicht.

                  @Dutchman Ja, Koordinaten sind korrekt eingestellt (siehe das "Probescript, was die richtigen Werte zurückliefert.)

                  1 Reply Last reply Reply Quote 0
                  • M
                    mcmuller last edited by

                    ich hole das Thema nochmal hoch…

                    leider komme ich hier nicht wirklich weiter. Die Astro-Funktionen funktionieren genau 1 Mal nach dem Javascript-Adapter Neustart, dann nicht mehr. Da es ja bei Euch zu funktionieren scheint, muß der Fehler wohl an meiner Installation liegen. Ich habe das Raspberry-Image installiert und die Homematic, Javascript, MQTT, Pushover und SQL-Adapter zusätzlich aktiviert. Skripte habe ich erst in Blockly probiert, dann aber neu in Javascript angelegt.

                    Astro ist für mich wirklich wichtig, wäre schade, wenn ich deshalb wieder ein anderes System nutzen müßte.

                    Grüße,

                    mcmuller

                    1 Reply Last reply Reply Quote 0
                    • Dutchman
                      Dutchman Developer Most Active Administrators last edited by

                      @mcmuller:

                      Astro ist für mich wirklich wichtig, wäre schade, wenn ich deshalb wieder ein anderes System nutzen müßte. `

                      nix da du bleibst hier sonst kommt der @homoran mal bei dir vorbei 8-)

                      ehm so mal zum test, 2ten adapter installieren und astro darauf testen.

                      Dein script musst du dan auf die andere instance setzen (neben script 0 oder 1) 1 wird dan deine 2te instanz.

                      eventueel hat deine JS adapter doch ne macke, lass mal probieren ?

                      Workarround kan auch sein das skript einfach jeden tag an/aus zu machen (geht auch per script) das ist aber ein haesslicher hack und nicht was wir wollen.

                      ~Dutch

                      1 Reply Last reply Reply Quote 0
                      • M
                        mcmuller last edited by

                        @dutch

                        danke für den Tipp! Ich richte mal die zweite Java-Instanz ein und schaue mal, was da geht. Ich habe ein wenig meine Koordinaten in Verdacht, da ich mit Breite 37.2060 und Länge -8.5787 einen "negativen" Wert habe. Aber die TestSkripte werfen die richtigen Sonnenauf- und untergangswerte raus, also eher unwahrscheinlich.

                        Grüße,

                        mcmuller

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

                          @mcmuller:

                          Danke für Eure Kommentare!

                          @Dutchman Ja, Koordinaten sind korrekt eingestellt (siehe das "Probescript, was die richtigen Werte zurückliefert.) `

                          Hi,

                          Du schreibst das Du in den Admin-Einstellungen (Haupteinstellungen) die Koordinaten drinnen hast.

                          Hast Du die Koordinaten auch bei Deinen Javascript Instanzeinstellungen hinterlegt?

                          Dazu auch der Hinweis in der Javascript Doku auf Github:
                          > Note: to use "astro"-function the "latitude" and "longitude" must be defined in javascript adapter settings.

                          Gruß

                          Roland

                          1 Reply Last reply Reply Quote 0
                          • M
                            mcmuller last edited by

                            @RoE19xx Guter Punkt, aber ja, habe ich in den Javascript-Instanzen hinterlegt.

                            1 Reply Last reply Reply Quote 0
                            • M
                              mcmuller last edited by

                              @dutch …also, die zweite Instanz hat nichts​ s verändert. Erste Auslösung bei Sonnenuntergang war OK, danach, also bei Sonnenaufgang heute, wieder nix. Reloaded ich das Skript nach der ersten Auslösung, wird auch kein scheduler eingetragen. Nur ein Neustart der Instanz läßt die erneute, einmalige Ausführung zu. So sad....

                              Grüsse aus Portugal,

                              mcmuller

                              Gesendet von meinem Lenovo YT3-X90F mit Tapatalk

                              1 Reply Last reply Reply Quote 0
                              • Dutchman
                                Dutchman Developer Most Active Administrators last edited by

                                @mcmuller:

                                @dutch …also, die zweite Instanz hat nichts​ s verändert. Erste Auslösung bei Sonnenuntergang war OK, danach, also bei Sonnenaufgang heute, wieder nix. Reloaded ich das Skript nach der ersten Auslösung, wird auch kein scheduler eingetragen. Nur ein Neustart der Instanz läßt die erneute, einmalige Ausführung zu. So sad....

                                Grüsse aus Portugal,

                                mcmuller

                                Gesendet von meinem Lenovo YT3-X90F mit Tapatalk `
                                :shock:

                                Dus sags script reload, was passiert wen du das script stop ==> start machst ?

                                Und du hast ihn auf die 2te instanz gelegt ?

                                979_capture.jpg

                                ~Dutch

                                1 Reply Last reply Reply Quote 0
                                • M
                                  mcmuller last edited by

                                  Hi dutch,

                                  bei "stop-start" kommt erwartungsgemäß:

                                  10:05:40.192	[info]	javascript.1 Stop script script.js.common.Aussenlicht
                                  10:05:41.813	[info]	javascript.1 Start javascript script.js.common.Aussenlicht
                                  10:05:41.814	[info]	javascript.1 script.js.common.Aussenlicht: registered 0 subscriptions and 2 schedules
                                  

                                  …jetzt, da die astro-funktion heute nach dem Neustart noch nicht ausgelöst hat, kommt bei "reload" auch wieder :

                                  10:07:46.930	[info]	javascript.1 Stop script script.js.common.Aussenlicht
                                  10:07:46.951	[info]	javascript.0 Stop script script.js.common.Aussenlicht
                                  10:07:47.022	[info]	javascript.1 Start javascript script.js.common.Aussenlicht
                                  10:07:47.023	[info]	javascript.1 script.js.common.Aussenlicht: registered 0 subscriptions and 2 schedules
                                  

                                  hier nochmal mein Skript, mit testweise auskommentiertem MQTT-Schalter:

                                  schedule({astro: "sunrise", shift: 0}, function () {
                                  /*  setState("mqtt.0.garageduino.relais3", 'off');*/
                                    sendTo("pushover", "send", {
                                       message: 'Sonnenaufgang!',
                                       sound: "bike"
                                    });
                                  });
                                  
                                  schedule({astro: "sunset", shift: 0}, function () {
                                  /*  setState("mqtt.0.garageduino.relais3", 'on');*/
                                    sendTo("pushover", "send", {
                                       message: 'Sonnenuntergang!',
                                       sound: "bike"
                                      });
                                  });
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • Dutchman
                                    Dutchman Developer Most Active Administrators last edited by

                                    ok also:

                                    • astro geht nicht, nur bei einmaligen script start

                                    • scripte sind OK

                                    • 2te instanz hilft nicht

                                    Dan muss wirklich jemand mit mehr ahnung als mir ran um das zu loesen, ich habe aber einen workarround fuer dich!

                                    Unter objecten steht der javascript adapter, jedes script kannst du da (switch.active) ein oder ausschalten.

                                    Da ein aus-ein des scripts das problem temporaer loest, koenntest du ein cron shedule macher der alle x minuten/stunden oder 1-2 mal am tag dein script neu startet.

                                    Mache dan aber eien time-out von (z.b. 30 sekunden) zwischen wert auf false und dan 30 sec spaeter wieder true.

                                    Damit sollte das script aus-ein geschaltet werden

                                    ISt niccht die besste loescung, aber evenutel fuer jetzt mal ein brauchbare workarround ?

                                    ~Dutch

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    1.0k
                                    Online

                                    31.6k
                                    Users

                                    79.6k
                                    Topics

                                    1.3m
                                    Posts

                                    8
                                    24
                                    5399
                                    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