NEWS
Astro-Tageszeit abfragen und in Datenpunkt eintragen
-
@ple sagte:
Javascript ist auf 4.1.12
Von Github ? Dann ändere bitte die Zeile
var tomorrow = today.setDate(today.getDate()+1);
in
var tomorrow = new Date(today.setDate(today.getDate()+1));
Ein PR auf Github ist erstellt, aber noch nicht merged.
-
Kein Plan warum man sich da ein JavaScript dafür von jemand übernimmt (@paul53 kann man machen und nichts gegen Dein Script).
Wenn man schlicht die Astrozeiten als DP haben möchte und von Javascript nichts versteht, dann bietet Blockly schon alles was man braucht.sieht dann so aus:
Hier dann mal der Blockly Export, falls es einer haben möchte:
-
@paul53 :
Bei mir funktioniert dein Script leider nicht.
Javascript Adapter ist auf 4.1.12
js-controller ist auf 1.5.11Fehlerlog:
javascript.0 2019-06-02 18:36:53.028 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2019-06-02 18:36:53.028 error at tryOnTimeout (timers.js:323:5) javascript.0 2019-06-02 18:36:53.028 error at ontimeout (timers.js:511:34) javascript.0 2019-06-02 18:36:53.028 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1886:34) javascript.0 2019-06-02 18:36:53.027 error at Object.<anonymous> (script.js.common.System.Astrozeiten_berechnen_V2:302:16) javascript.0 2019-06-02 18:36:53.027 error at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1220:42) javascript.0 2019-06-02 18:36:53.027 error Error in callback: TypeError: date.getDate is not a function javascript.0 2019-06-02 18:36:53.027 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2019-06-02 18:36:53.027 error at tryOnTimeout (timers.js:323:5) javascript.0 2019-06-02 18:36:53.027 error at ontimeout (timers.js:511:34) javascript.0 2019-06-02 18:36:53.027 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1886:34) javascript.0 2019-06-02 18:36:53.027 error at Object.<anonymous> (script.js.common.System.Astrozeiten_berechnen_V2:302:16) javascript.0 2019-06-02 18:36:53.027 error at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1220:42) javascript.0 2019-06-02 18:36:53.027 error Error in callback: TypeError: date.getDate is not a function javascript.0 2019-06-02 18:36:53.027 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2019-06-02 18:36:53.027 error at tryOnTimeout (timers.js:323:5) javascript.0 2019-06-02 18:36:53.027 error at ontimeout (timers.js:511:34) javascript.0 2019-06-02 18:36:53.027 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1886:34) javascript.0 2019-06-02 18:36:53.027 error at Object.<anonymous> (script.js.common.System.Astrozeiten_berechnen_V2:302:16) javascript.0 2019-06-02 18:36:53.027 error at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1220:42) javascript.0 2019-06-02 18:36:53.027 error Error in callback: TypeError: date.getDate is not a function javascript.0 2019-06-02 18:36:53.027 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2019-06-02 18:36:53.027 error at tryOnTimeout (timers.js:323:5) javascript.0 2019-06-02 18:36:53.027 error at ontimeout (timers.js:511:34) javascript.0 2019-06-02 18:36:53.027 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1886:34) javascript.0 2019-06-02 18:36:53.027 error at Object.<anonymous> (script.js.common.System.Astrozeiten_berechnen_V2:302:16) javascript.0 2019-06-02 18:36:53.027 error at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1220:42) javascript.0 2019-06-02 18:36:53.027 error Error in callback: TypeError: date.getDate is not a function javascript.0 2019-06-02 18:36:53.027 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2019-06-02 18:36:53.027 error at tryOnTimeout (timers.js:323:5) javascript.0 2019-06-02 18:36:53.027 error at ontimeout (timers.js:511:34) javascript.0 2019-06-02 18:36:53.027 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1886:34) javascript.0 2019-06-02 18:36:53.027 error at Object.<anonymous> (script.js.common.System.Astrozeiten_berechnen_V2:302:16) javascript.0 2019-06-02 18:36:53.026 error at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1220:42) javascript.0 2019-06-02 18:36:53.026 error Error in callback: TypeError: date.getDate is not a function javascript.0 2019-06-02 18:36:53.026 error at Timer.listOnTimeout (timers.js:290:5) javascript.0 2019-06-02 18:36:53.026 error at tryOnTimeout (timers.js:323:5) javascript.0 2019-06-02 18:36:53.026 error at ontimeout (timers.js:511:34) javascript.0 2019-06-02 18:36:53.026 error at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1886:34) javascript.0 2019-06-02 18:36:53.026 error at Object.<anonymous> (script.js.common.System.Astrozeiten_berechnen_V2:302:16) javascript.0 2019-06-02 18:36:53.026 error at getAstroDate (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1220:42) javascript.0 2019-06-02 18:36:53.026 error Error in callback: TypeError: date.getDate is not a function
-
@quorle
Deshalb nimmst einfach das Blockly, weil das immer funktioniert und so ziehmich auch exakt das Selbe rauskommt. -
@quorle sagte:
Fehlerlog:
Dann verwendest Du die JS-Version von Github, die noch einen Fehler enthält, wenn date an getAstroDate() in ms übergeben wird. Deshalb ändere Zeile 292 in
var tomorrow = new Date(today.setDate(today.getDate()+1));
-
@Jan1 sagte:
sieht dann so aus:
Du hast Glück, dass Du so weit südlich wohnst und deshalb "Nacht" und "Nachtende" bei Dir auch im Sommer funktioniert.
Mitternachtsdämmerung -
Danke für deine schnelle und Hilfreiche Antwort. So funktioniert es ohne Fehler und Probleme.
Ich hoffe es werden bal alle Fehler des Javascript-Adapters ausgemerzt sein....
-
@paul53 sagte in Astro-Tageszeit abfragen und in Datenpunkt eintragen:
@Jan1 sagte:
sieht dann so aus:
Du hast Glück, dass Du so weit südlich wohnst und deshalb "Nacht" und "Nachtende" bei Dir auch im Sommer funktioniert.
MitternachtsdämmerungIch hatte ursprünglich auch ein Script dafür hier aus dem Forum und da gabs dann auch Probleme bei Sommer und Winter. Da aber die "normalen" Astrozeiten für ein Großteil der User eigentlich reicht, oder man die vorhandenen einfach mit einem Offset etwas anpasst, sind eben auch die von Blockly zur Verfügung stehenden Astro Zeiten auch ausreichend.
OK, es gibt eben immer User die was extra haben wollen, aber für die bist dann eben Du zuständig -
@paul53 sagte in Astro-Tageszeit abfragen und in Datenpunkt eintragen:
@quorle sagte:
Fehlerlog:
Dann verwendest Du die JS-Version von Github, die noch einen Fehler enthält, wenn date an getAstroDate() in ms übergeben wird. Deshalb ändere Zeile 292 in
var tomorrow = new Date(today.setDate(today.getDate()+1));
Besten Dank
-
Bisher leif das Script hier wunderbar
Jetzt bekomme ich diese Fehler:
javascript.0 2019-06-03 22:59:03.011 error Cannot get astro date for "nightEnd" javascript.0 2019-06-03 22:59:03.010 error Cannot get astro date for "night" javascript.0 2019-06-03 22:59:00.038 error Cannot get astro date for "nightEnd" javascript.0 2019-06-03 22:59:00.038 warn missing or unrecognized endTime expression: NaN javascript.0 2019-06-03 22:59:00.038 error Cannot get astro date for "nightEnd" javascript.0 2019-06-03 22:59:00.038 error Cannot get astro date for "night" javascript.0 2019-06-03 22:59:00.038 warn missing or unrecognized endTime expression: NaN javascript.0 2019-06-03 22:59:00.037 error Cannot get astro date for "night"
Hier die Script-Version:
erstellt: 01.06.2015 von Pix
11.12.2015 getAstroDate ermittelt nun auch Sonnenaufgang und Untergang
Astrotag (isAstroDay) eingebaut
23.02.2018 checkSec eingebaut (Uhrzeit sekundengenau?)
andere Astrozeiten werden nun auch gespeichert
Neuer Pfad
24.02.2018 Unterteilung in zwei Bereiche
27.02.2018 Bestimmung, welche AstroZeit aktuell ist (mit der ioBroker-Funktion compareTime)
Beschreibung Objekt Astrotag korrigiert
Objekte werden jetzt bei jedem Zeitplan angelegt, falls nicht (mehr) vorhandenWeiss jemand Abhilfe?
-
-
Wie immer, klasse Hilfe!
-
Habe mal begonnen das ganze in ein Blockly zu packen, offen ist noch die "nächste Tageszeit":
https://gist.github.com/darkiop/236a5755b5f3d6f361907f59d10963ef
-
@paul53 sagte in Astro-Tageszeit abfragen und in Datenpunkt eintragen:
@quorle sagte:
Fehlerlog:
Dann verwendest Du die JS-Version von Github, die noch einen Fehler enthält, wenn date an getAstroDate() in ms übergeben wird. Deshalb ändere Zeile 292 in
var tomorrow = new Date(today.setDate(today.getDate()+1));
Gibt es auch die Möglichkeit die Ausgabe in 24h Format zu bekommen? bei mir sind die alle in 12h Format. Für Vis ist das ein wenig blöde.
Gruß und Danke
-
@quorle Mittlerweile ist es umgekehrt: Die Version 4.1.13 enthält diesen Fehler und auf Github ist er gefixt.
In Version 4.1.13 ist der fehlerhafte Vergleich "zwischen Astrozeit und Uhrzeit" in der Zeit zwischen Mitternacht und "nadir" gefixt. -
Der Adapter shuttercontrol gibt Dir inzwischen auch alle Astrozeiten als Datenpunkt raus und ist dazu inzwischen recht funktionstüchtig für viele Möglichkeiten der Rolladensteuerung
-
@simatec sagte in Astro-Tageszeit abfragen und in Datenpunkt eintragen:
Der Adapter shuttercontrol gibt Dir inzwischen auch alle Astrozeiten als Datenpunkt raus
Wohin?
-
@sigi234
Die Datenpunkte findest du im schuttercontrol.0.info -
@simatec sagte in Astro-Tageszeit abfragen und in Datenpunkt eintragen:
@sigi234
Die Datenpunkte findest du im schuttercontrol.0.infoAha, Danke dauerte ein wenig bzw. musste die Objekte aktualisieren........
-
Hallo,
mein Iobroker läuft in einer VM auf Proxmox.
Ich benutze das Script von paul53.
Ich schaffe es nicht die Anzeige auf 24 Std zu bekommen.Ich habe die letzten zwei Tage diesen Thread 2 mal komplett durchgelesen.
Alle Tipps befolgt, aber keine Lösung gefunden.Anzeige Date: root@iobroker:/etc/default# date Di 11. Jun 15:27:36 CEST 2019 root@iobroker:/etc/default#
Zeitzone: root@iobroker:/etc/default# timedatectl Local time: Di 2019-06-11 15:29:19 CEST Universal time: Di 2019-06-11 13:29:19 UTC RTC time: Di 2019-06-11 13:29:19 Time zone: Europe/Berlin (CEST, +0200) Network time on: yes NTP synchronized: yes RTC in local TZ: no root@iobroker:/etc/default#
Vielleicht hat ja noch jemand eine Idee für mich.Vielen Dank