Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Script läuft nach Umzug auf anderen Server nicht mehr

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    905

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Script läuft nach Umzug auf anderen Server nicht mehr

Geplant Angeheftet Gesperrt Verschoben JavaScript
14 Beiträge 3 Kommentatoren 613 Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • R raspido

    Hey Leute,

    ich habe zuletzt meinen Server aktualliert auf dem der ioBroker läuft. Nur ich habe das Problem, dass ein Script, zumindest habe ich es bei einem gemerkt, da nicht alle ständig bzw. Täglich eine Aufgabe haben. Zu meiner Vorgehensweise, ich habe auf dem alten Server ein komplettes Backup gemacht, auf dem neuen Server dieses wieder aufgespielt und gewartet, bis im Hintergrund alles mögliche nachinstalliert war. Im Anschluß habe ich die benötigten Adapter gestartet und gewartet, bis Messdaten und ähnliches geladen Waren.

    Doch nun sollte das Script bei überschreiten der 25° und Helligkeit von über 2.500 Lux die Rollos runter fahren. Doch da tat sich heute nichts. Vielleicht kann mir jemand helfen.

    Das Script:

    /*
    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('hm-rpc.1.0010D8A990A07B.1.ACTUAL_TEMPERATURE', 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.PEQ0181507.1.LEVEL", level, 10000);
                    setStateDelayed("hm-rpc.0.OEQ2341971.1.LEVEL", level, 15000);       
                */
                setStateDelayed("hm-rpc.0.PEQ0181297.1.LEVEL", level, 20000);
                setStateDelayed("hm-rpc.0.PEQ0181518.1.LEVEL", level, 25000);
                setStateDelayed("hm-rpc.0.PEQ0181504.1.LEVEL", level, 30000);
                setStateDelayed("hm-rpc.0.PEQ0181520.1.LEVEL", level, 35000);
                setStateDelayed("hm-rpc.0.PEQ0181559.1.LEVEL", level, 40000);
            }
    
        }
    
    });
    
    

    Die 2 Rollos die Auskommentiert sind, sind vom Kinderzimmer. Da muss ich mir noch was überlegen, dass diese im Zeitraum von 12 - 16 Uhr ignoriert werden. Also die sollen vor 12 Uhr und nach 16 Uhr automatisch mitlaufen. Aber das gucke ich mir im Nachgang an. Problem war, dass die Kinder beim Mittagsschlaf geweckt wurden, wenn plötzlich kälter wurde. War nicht ganz so cool. Den Schwellwert ab wann die Rollos wieder hoch gefahren werden sollen, habe ich reduziert. Da beim Original, was vorher so geplant war das Rollo x Mal hoch und runter fuhr. Vor dem Serverumzug lief alles noch wunderbar.

    Und der ioBroker auf dem Alten Server ist gestoppt. Habe den Server selbst noch nicht ganz runter gefahren.

    Eine Fehlermeldung zum Script gibt es im LOG nicht. Hat jemand von euch ggf. sowas schon mal erlebt und ggf. ein Tipp?

    Michael

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2

    @raspido
    Schreibe in Zeile 35 eine Log-Ausgabe, um zu sehen, was passiert.

        log('Temperatur: ' + temp + ' °C, Licht: ' + licht + ' lux, Rollos: ' + level + ' %');
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    R 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @raspido
      Schreibe in Zeile 35 eine Log-Ausgabe, um zu sehen, was passiert.

          log('Temperatur: ' + temp + ' °C, Licht: ' + licht + ' lux, Rollos: ' + level + ' %');
      
      R Offline
      R Offline
      raspido
      schrieb am zuletzt editiert von
      #3

      @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

      paul53P 1 Antwort Letzte Antwort
      0
      • R raspido

        @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

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #4

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

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        R 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @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 Offline
          R Offline
          raspido
          schrieb am zuletzt editiert von
          #5

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

          paul53P 1 Antwort Letzte Antwort
          0
          • R raspido

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

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #6

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

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            R 1 Antwort Letzte Antwort
            0
            • paul53P paul53

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

              R Offline
              R Offline
              raspido
              schrieb am zuletzt editiert von
              #7

              @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

              htreckslerH paul53P 2 Antworten Letzte Antwort
              0
              • R raspido

                @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

                htreckslerH Offline
                htreckslerH Offline
                htrecksler
                Forum Testing
                schrieb am zuletzt editiert von
                #8

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

                Gruss Hermann

                ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                R 1 Antwort Letzte Antwort
                0
                • htreckslerH htrecksler

                  @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 Offline
                  R Offline
                  raspido
                  schrieb am zuletzt editiert von
                  #9

                  @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

                  htreckslerH 1 Antwort Letzte Antwort
                  0
                  • R raspido

                    @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

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von paul53
                    #10

                    @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) {
                    }
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    • R raspido

                      @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

                      htreckslerH Offline
                      htreckslerH Offline
                      htrecksler
                      Forum Testing
                      schrieb am zuletzt editiert von htrecksler
                      #11

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

                      Gruss Hermann

                      ioBroker auf Proxmox (Debian) auf IntelNuc als Produktivsystem

                      R 1 Antwort Letzte Antwort
                      0
                      • htreckslerH 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 Offline
                        R Offline
                        raspido
                        schrieb am zuletzt editiert von
                        #12

                        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

                        paul53P 1 Antwort Letzte Antwort
                        0
                        • R raspido

                          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

                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von paul53
                          #13

                          @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) {
                          

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          R 1 Antwort Letzte Antwort
                          0
                          • paul53P 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 Offline
                            R Offline
                            raspido
                            schrieb am zuletzt editiert von
                            #14

                            @paul53 danke für den Hinweis.

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            330

                            Online

                            32.6k

                            Benutzer

                            82.2k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe