Navigation

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

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Photovoltaik Script

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

      Hallo Dieter,

      vielen Dank zunächst. Das Script soll sich erst aktivieren, wenn ich zu Hause bin ( Anwesenheit true) und dann alle 5 Minuten aktualisieren. Wenn ich gehe ( Anwesenheit false), dann soll es sich wieder deaktivieren. In Deinen Beispiel dürfte es sich doch nur einmal bei Anwesenheit aktualisieren dann nicht mehr, oder?

      Gruß Michael

      1 Reply Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        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

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

          Ich danke Dir herzlich, Dieter 🙂

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

            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

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

              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

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

                Was heisst "bringt zum Absturz"!? Welche Fehler gibts denn?

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

                  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.

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

                    @ 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

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

                      @michi050:

                      @ 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 🙂

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

                        Hallo Apollo,

                        hier das Log der Fehlermeldung.

                        Gruß Michael
                        1914_kostal.jpg

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

                          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 🙂

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          850
                          Online

                          31.7k
                          Users

                          79.8k
                          Topics

                          1.3m
                          Posts

                          10
                          41
                          5196
                          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