Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Script läuft nach Umzug auf anderen Server nicht mehr

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Script läuft nach Umzug auf anderen Server nicht mehr

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      raspido @paul53 last edited by

      @paul53 Soweit ich das richtig verstehe, sollte diese Zeile im Log oder unterm Script im Ereignismonitor was ausgeben. Nur leider gibt er dazu keine Infos aus.

      Also ich finde keine Zeile mit "Temperatur", Licht oder der gleichen.

      Nur Ereignisse, wie Script gestopt, gestartet und so.

      Michael

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

        @raspido sagte: Also ich finde keine Zeile mit "Temperatur", Licht oder der gleichen.

        Du musst warten, bis der Trigger auslöst, also sich die Temperatur ändert.

        R 1 Reply Last reply Reply Quote 0
        • R
          raspido @paul53 last edited by

          @paul53 Okay dann warte ich mal und melde mich am Abend. Bis dahin sollte sich was tun.

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

            @raspido
            Im Tab "Objekte" werden die Werte der hm-rpc-Datenpunkte richtig angezeigt und aktualisiert?

            R 1 Reply Last reply Reply Quote 0
            • R
              raspido @paul53 last edited by

              @paul53 Also bevor mir was aufgefallen ist, wurden die Werte nicht aktuallisiert. Wobei ich hatte das Gefühl, dass sich draußen bislang nicht viel geändert hatte. Aber naja das eine Problem gefunden und beseitigt. Also das Script an sich läuft wieder.

              Bei den Adapter für Homematic war die Falsche Callback IP hinterlegt gewesen. Also der neue und der alte Server haben unterschiedliche IP Adressen und naja ist mir erst garnicht aufgefallen bzw. eingefallen.

              Nur muss ich nun gucken, wie man es am einfachsten und besten lösen kann, dass die Rollos im Kinderzimmer (Die auskommentierten), nicht in dem Zeitraum Montag bis Freitag jeweils 12.00 Uhr bis 15.30 Uhr automatisch bewegen. In dem Zeitraum schlafen in der Regel die Tageskinder und die werden immer Wach wenn plötzlich das Rollo fährt.

              Deshalb habe ich diese im Moment auskommentiert.

              Michael

              htrecksler paul53 2 Replies Last reply Reply Quote 0
              • htrecksler
                htrecksler Forum Testing @raspido last edited by

                @raspido Du machst dir einfach einen Datenpunkt "Kinderzimmerrolladensperre" .
                Den setzt du um 12 Uhr auf True und um 15:00 Uhr auf False

                Und im Rolladenscript prüfst du vorm Schalten den Datenpunkt.
                Das wäre eine Möglichkeit. Es gibst sich noch andere.

                R 1 Reply Last reply Reply Quote 0
                • R
                  raspido @htrecksler last edited by

                  @htrecksler Okay Danke für den Tipp.

                  Das "steuern" des Datenpunktes kann ich ja auch im gleichen Script packen oder spricht da was dagegen? Ein kleines Problem hab ich noch, wie bekomme ich die Aktuelle Uhrzeit? Ich habe in den Datenpunkten gewühlt und irgendwie noch nicht den gefunden, der "aktuell" ist

                  Michael

                  htrecksler 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @raspido last edited by paul53

                    @raspido sagte: nicht in dem Zeitraum Montag bis Freitag jeweils 12.00 Uhr bis 15.30 Uhr automatisch bewegen

                    let wd = new Date().getDay();
                    if(compareTime('12:00', '15:30', 'not between') || wd == 0 || wd == 6) {
                    }
                    
                    1 Reply Last reply Reply Quote 0
                    • htrecksler
                      htrecksler Forum Testing @raspido last edited by htrecksler

                      @raspido z. B. mit einem

                      schedule("0 12 * * *", RolladenSperreSetzen);
                      
                      schedule("0 15 * * *", RolladenSperreAufheben);
                      

                      RolladenSperreSetzen bzw RolladenSperreAufheben wären in dem Fall Funktionen im Script in welchen dann der Datenpunkt auf TRUE bzw. FALSE gesetzt wird.

                      Der Vorteil das Ganze über einen DP zu steuern...Du kannst auch andere Ereignisse nutzen um das Fahren der Rolladen zu verhindern. Den DP kannst du ja jederzeit beeinflussen.

                      R 1 Reply Last reply Reply Quote 0
                      • R
                        raspido @htrecksler last edited by

                        Ich habe das mit dem externen Datenpunkt gemacht. Ich denke das bringt mehr flexibiltät. Aber mal gucken ob das nun läuft, was ich da zusammengebaut habe.

                        Hier der Code zur Rollosteuerung:

                        /*
                        Urlaubssteuerung für die Rollos, bei über 25 Grad fahren die Rollos runter, bei unter 25 Grad und wenn es Hell ist hoch
                        
                        
                        */
                        
                        
                        
                        var level = getState('hm-rpc.0.PEQ0181456.1.LEVEL').val;
                        
                        on('alias.0.Temperaturen.Draußen.ACTUAL', function (dp) {
                            let temp = dp.state.val;
                            let licht = getState("hm-rpc.1.000D58A9915FBC.1.AVERAGE_ILLUMINATION").val;
                            if(licht > 2500) {
                                if (temp > 25) level = 25;
                        
                                else if (temp < 20) level = 100;
                        
                                if(level != getState('hm-rpc.0.PEQ0181456.1.LEVEL').val) {
                                    setState("hm-rpc.0.PEQ0181456.1.LEVEL", level);
                                    setStateDelayed("hm-rpc.0.PEQ0181557.1.LEVEL", level, 5000);
                                    setStateDelayed("hm-rpc.0.PEQ0181297.1.LEVEL", level, 10000);
                                    setStateDelayed("hm-rpc.0.PEQ0181518.1.LEVEL", level, 15000);
                                    setStateDelayed("hm-rpc.0.PEQ0181504.1.LEVEL", level, 20000);
                                    setStateDelayed("hm-rpc.0.PEQ0181520.1.LEVEL", level, 25000);
                                    setStateDelayed("hm-rpc.0.PEQ0181559.1.LEVEL", level, 30000);
                                    //Kinderzimmer Rollos
                                    if(!getState('0_userdata.0.Hilfsdatenpunkte.Kinderzimmer_Rollo_Sperre')){
                                        setStateDelayed("hm-rpc.0.PEQ0181507.1.LEVEL", level, 35000);
                                        setStateDelayed("hm-rpc.0.OEQ2341971.1.LEVEL", level, 40000);
                                    }
                                }
                        
                            }
                            log('Temperatur: ' + temp + ' °C, Licht: ' + licht + ' lux, Rollos: ' + level + ' %'); 
                        });
                        

                        Und Hier ein Screenshot vom Blockly Code für die Steuerung des Datenpunktes:

                        a5c73a50-a7ee-4ddc-b376-da193e5810fa-grafik.png

                        Also wenn ich das noch richtig in Erinnerung habe aus der Vergangeheit, müsste das mit dem Abfragen des Zustands des Datenpunktes klappen. Ich habe den zur besseren Übersicht ans Ende gepackt. Also nicht wundern. So sind die ohne "Sonderprogramm" und mit "Sonderprogramm" bisschen von einander getrennt.

                        Michael

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

                          @raspido sagte: ob das nun läuft, was ich da zusammengebaut habe.

                          Das läuft nicht. Korrigiere Zeile 28:

                                      if(!getState('0_userdata.0.Hilfsdatenpunkte.Kinderzimmer_Rollo_Sperre').val) {
                          
                          R 1 Reply Last reply Reply Quote 0
                          • R
                            raspido @paul53 last edited by

                            @paul53 danke für den Hinweis.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            411
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            3
                            14
                            316
                            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