NEWS
Photovoltaik Script
-
ok, dann so:
schedule("2,7,12,17,22,27,32,37,42,47,52,57 * * * *", function () { var Anw = getState('SV.....').val; if (Anw === true) { log ("Auslöser: Schedule"); Piko(); } });
Das heißt:
Schedeule wird alle 5 Min. ausgeführt.
Und dann wird Anwesenheit geprüft.
Und nur wenn Anw true dann gehe zum Script.
so richtig ?
mfg
-
Ich danke Dir herzlich, Dieter
-
Ich hab jetzt auch meine ersten Programmierversuche gestartet Garagentor funktioniert jetzt über App dank Arduino!! - http://www.instructables.com/id/Arduino-WiFi-Garage-Door-Opener/ Infos dazu.
Den Erwerb einer PV überlegen wir uns auch schon eine Zeit lang, sollte es soweit kommen, probiere ich dein Skript auch sehr gerne aus!
Aktuell sind wir nämlich nur bei eine PV-Projekt der https://www.stw.at eingemietet, selber haben wir derzeit nur Solar-Zellen am Dach.
Meinst du, mit kleinen Änderungen kann man dein Script auch dafür verwenden?
Gruß,
piet
-
Hallo,
ich habe das Script von Bahnuhr zum Auslesen der Daten vom Kostal in Gebrauch. Es funktioniert grundsätzlich ganz gut, aber so 2-3mal pro Tag bringt das Script die Instanz der Java Scriptengine zum Absturz. Dies hat zur Folge, dass alle laufenden Prozesse unterbrochen werden, bis die Instanz neu gestartet ist.
Ohne das Script grundsätzlich verändern zu wollen wäre die Frage ob es sinnvoll ist, eine weitere Instanz (JavaScript.1) zu installieren und in dieser das Kostalscript isoliert zu betreiben? Dann würde die Instanz Javascript.0 zumindest nicht mehr abstürzen. Wäre der Ansatz richtig?
Danke u. Gruß
Michael
-
Was heisst "bringt zum Absturz"!? Welche Fehler gibts denn?
-
Hallo Michael,
unbedingt! Das ist die schnellste Lösung bevor man sich das Skript vornimmt. So lässt sich auch rausfinden, ob nur das Photovoltaik Skript oder ein weiteres Skript, das parallel läuft (zB gleichzeitig auch von einer Webseite parst), den Fehler ausführt.
Also schnell eine neue Instanz erstellen!
Gruß
Pix
EDIT:
Neue oder verdächtige Skripte laufen bei mir immer in der Instanz 2.
Skripte, die getestet sind und Daten aus dem Internet benötigen in Instanz 1.
Alle lebenswichtigen Skripte (ohne Internetbedarf) in Instanz 0.
-
@ apollon77:
Es wird versucht Daten auszulesen, danach stehen im Log Fehlerzeilen, im Anschluß wird die Instanz neu gestartet. Es kommt selten vor, aber laufende Prozesse sind dann jeweils beendet.
@ pix
Vielen Dank. Also unter Adapter nur eine weitere Javascript/Coffeescript Engine (+) installieren?
Gruß
Miichael
-
@ apollon77:
Es wird versucht Daten auszulesen, danach stehen im Log Fehlerzeilen, im Anschluß wird die Instanz neu gestartet. Es kommt selten vor, aber laufende Prozesse sind dann jeweils beendet. `
Dann dann mal her mit den Fehlerzeilen -
-
Spontan tippe ich das es Fälle gibt wo dein Request in einen Fehler läuft. Dann ist "body" leer.
Das wird aktuell im Skript aber nicht abgefangen. Und scheinbar fängt es die cheerio-Library beim Aufruf
$ = cheerio.load(body);
auch nicht ab.
Ich würde ja noch ein "if (body) { …}" in den request einbauen oder wenigstens noch den responsecode prüfen - der ist bei den Fehlerfällen bestimmt auch nicht 200 ... Also hier fehlt einfach Fehlerhandling