Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Schedule jede Stunde

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    5
    1
    181

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    8
    1
    197

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    884

Schedule jede Stunde

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascript
9 Beiträge 2 Kommentatoren 265 Aufrufe 1 Beobachtet
  • Ä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.
  • M Offline
    M Offline
    michihorn
    schrieb am zuletzt editiert von
    #1

    Hallo ich habe folgendes Vorhaben: Im Ferienhaus steht ein Iobroker der mir über Telegram Temperatur Werte in die Heimat übermitteln soll.
    Ich habe 7 Zigbee Geräte die einmal pro Stunde im Versatz von 1 Minute Daten übermitteln sollen. Mein Ansatz sieht wie folgt aus:

    /*****Giethoorn sendet Temperaturen an Castrop *****************
    **    März 2021
    **    
    **    
    **    erstellt: 10.03.21
    **    geä: 
    ***********************************************************************/
    const id_TA = "zigbee.0.00158d000444cb23.temperature"; //1
    const id_TK = "zigbee.0.00158d0001e09c1a.temperature"; //2
    const id_TN = "zigbee.0.00158d0001e0821b.temperature"; //3
    const id_TS = "zigbee.0.00158d0001e13db7.temperature"; //4
    const id_TW = "zigbee.0.00158d0001e09bc7.temperature"; //5
    
    const id_OS = "zigbee.0.00158d000423bfd0.illuminance"; //6
    const id_IS = "zigbee.0.00158d000253e897.illuminance"; //7
    
    //schedule("0 */1 * * *", function () {
    //1
    schedule("1 * * * *", function () {
        sendTo('telegram.0', 'send', {
            text: ("TA " + getState(id_TA).val)
        });
        log("TA " + getState(id_TK).val);
        //2
        schedule("2 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("TK " + getState(id_TK).val)
            });
            log("TK " + getState(id_TN).val);
            //3
            schedule("3 * * * *", function () {
                sendTo('telegram.0', 'send', {
                    text: ("TN " + getState(id_TN).val)
                });
                log("TN " + getState(id_TS).val);
                //4
                schedule("4 * * * *", function () {
                    sendTo('telegram.0', 'send', {
                        text: ("TS " + getState(id_TS).val)
                    });
                    log("TS " + getState(id_TS).val);
                    //5
                    schedule("5 * * * *", function () {
                        sendTo('telegram.0', 'send', {
                            text: ("TW " + getState(id_TW).val)
                        });
                        log("TW " + getState(id_TW).val);
                        //6
                        schedule("6 * * * *", function () {
                            sendTo('telegram.0', 'send', {
                                text: ("OS " + getState(id_OS).val)
                            });
                            log("OS " + getState(id_OS).val);
                            //7   
                            schedule("7 * * * *", function () {
                                sendTo('telegram.0', 'send', {
                                    text: ("IS " + getState(id_IS).val)
                                });
                                log("IS " + getState(id_IS).val);
                            });
                        });
                    });
                });
            });
        });
    });
    //});
    

    In der Heimat empfängt der Iobroker die Daten nach diesem Script:

    /*****Castrop empfängt Daten aus Giethoorn *****************
    **    März 2021
    **    Telegram-Adapter, 
    **    
    **    
    **    geändert:09.03.21
    ************************************************************/
    const id_req = "telegram.0.communicate.request";
    
    on({ id: id_req, change: "any" }, function (obj) {
        var value = getState(id_req).val;
        var raum = value.substr(11, 2);
        var wert = value.substring(value.length - 5)
         log("Telegraminhalt "+value);
        log("Messwert "+wert);
        if ((raum == "IS") || (raum == "OS")) {
            wert=value.substr(13,4);
            log("LUX " +wert);
        }
        log("Gerät " +raum);
    
        if (raum === "TA") {
            setState("javascript.3.Giethoorn.Temp.TA", wert);
        }
        if (raum === "TW") {
            setState("javascript.3.Giethoorn.Temp.TW", wert);
        }
        if (raum === "TK") {
            setState("javascript.3.Giethoorn.Temp.TK", wert);
        }
        if (raum === "TS") {
            setState("javascript.3.Giethoorn.Temp.TS", wert);
        }
        if (raum === "TN") {
            setState("javascript.3.Giethoorn.Temp.TN", wert);
        }
         if (raum === "OS") {
            setState("javascript.3.Giethoorn.Daten.OSLux", wert);
        }
             if (raum === "IS") {
            setState("javascript.3.Giethoorn.Daten.ISLux", wert);
        }
    });
    

    Wie würdet ihr das Vorhaben lösen?
    Gruß
    Michael

    paul53P 1 Antwort Letzte Antwort
    0
    • M michihorn

      Hallo ich habe folgendes Vorhaben: Im Ferienhaus steht ein Iobroker der mir über Telegram Temperatur Werte in die Heimat übermitteln soll.
      Ich habe 7 Zigbee Geräte die einmal pro Stunde im Versatz von 1 Minute Daten übermitteln sollen. Mein Ansatz sieht wie folgt aus:

      /*****Giethoorn sendet Temperaturen an Castrop *****************
      **    März 2021
      **    
      **    
      **    erstellt: 10.03.21
      **    geä: 
      ***********************************************************************/
      const id_TA = "zigbee.0.00158d000444cb23.temperature"; //1
      const id_TK = "zigbee.0.00158d0001e09c1a.temperature"; //2
      const id_TN = "zigbee.0.00158d0001e0821b.temperature"; //3
      const id_TS = "zigbee.0.00158d0001e13db7.temperature"; //4
      const id_TW = "zigbee.0.00158d0001e09bc7.temperature"; //5
      
      const id_OS = "zigbee.0.00158d000423bfd0.illuminance"; //6
      const id_IS = "zigbee.0.00158d000253e897.illuminance"; //7
      
      //schedule("0 */1 * * *", function () {
      //1
      schedule("1 * * * *", function () {
          sendTo('telegram.0', 'send', {
              text: ("TA " + getState(id_TA).val)
          });
          log("TA " + getState(id_TK).val);
          //2
          schedule("2 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("TK " + getState(id_TK).val)
              });
              log("TK " + getState(id_TN).val);
              //3
              schedule("3 * * * *", function () {
                  sendTo('telegram.0', 'send', {
                      text: ("TN " + getState(id_TN).val)
                  });
                  log("TN " + getState(id_TS).val);
                  //4
                  schedule("4 * * * *", function () {
                      sendTo('telegram.0', 'send', {
                          text: ("TS " + getState(id_TS).val)
                      });
                      log("TS " + getState(id_TS).val);
                      //5
                      schedule("5 * * * *", function () {
                          sendTo('telegram.0', 'send', {
                              text: ("TW " + getState(id_TW).val)
                          });
                          log("TW " + getState(id_TW).val);
                          //6
                          schedule("6 * * * *", function () {
                              sendTo('telegram.0', 'send', {
                                  text: ("OS " + getState(id_OS).val)
                              });
                              log("OS " + getState(id_OS).val);
                              //7   
                              schedule("7 * * * *", function () {
                                  sendTo('telegram.0', 'send', {
                                      text: ("IS " + getState(id_IS).val)
                                  });
                                  log("IS " + getState(id_IS).val);
                              });
                          });
                      });
                  });
              });
          });
      });
      //});
      

      In der Heimat empfängt der Iobroker die Daten nach diesem Script:

      /*****Castrop empfängt Daten aus Giethoorn *****************
      **    März 2021
      **    Telegram-Adapter, 
      **    
      **    
      **    geändert:09.03.21
      ************************************************************/
      const id_req = "telegram.0.communicate.request";
      
      on({ id: id_req, change: "any" }, function (obj) {
          var value = getState(id_req).val;
          var raum = value.substr(11, 2);
          var wert = value.substring(value.length - 5)
           log("Telegraminhalt "+value);
          log("Messwert "+wert);
          if ((raum == "IS") || (raum == "OS")) {
              wert=value.substr(13,4);
              log("LUX " +wert);
          }
          log("Gerät " +raum);
      
          if (raum === "TA") {
              setState("javascript.3.Giethoorn.Temp.TA", wert);
          }
          if (raum === "TW") {
              setState("javascript.3.Giethoorn.Temp.TW", wert);
          }
          if (raum === "TK") {
              setState("javascript.3.Giethoorn.Temp.TK", wert);
          }
          if (raum === "TS") {
              setState("javascript.3.Giethoorn.Temp.TS", wert);
          }
          if (raum === "TN") {
              setState("javascript.3.Giethoorn.Temp.TN", wert);
          }
           if (raum === "OS") {
              setState("javascript.3.Giethoorn.Daten.OSLux", wert);
          }
               if (raum === "IS") {
              setState("javascript.3.Giethoorn.Daten.ISLux", wert);
          }
      });
      

      Wie würdet ihr das Vorhaben lösen?
      Gruß
      Michael

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

      @michihorn sagte: einmal pro Stunde im Versatz von 1 Minute Daten übermitteln sollen.

      Die Schedules darf man nicht ineinander verschachteln. Ordne sie einfach untereinander an.

      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

      M 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @michihorn sagte: einmal pro Stunde im Versatz von 1 Minute Daten übermitteln sollen.

        Die Schedules darf man nicht ineinander verschachteln. Ordne sie einfach untereinander an.

        M Offline
        M Offline
        michihorn
        schrieb am zuletzt editiert von michihorn
        #3

        @paul53 Hab ich gemacht:

        /*****Giethoorn sendet Temperaturen an Castrop *****************
        **    März 2021
        **    
        **    
        **    erstellt: 10.03.21
        **    geä: 11.03.21
        ***********************************************************************/
        //Temperatur Sensoren--------------------------------------------
        const id_TA = "zigbee.0.00158d000444cb23.temperature"; //1
        const id_TK = "zigbee.0.00158d0001e09c1a.temperature"; //2
        const id_TN = "zigbee.0.00158d0001e0821b.temperature"; //3
        const id_TS = "zigbee.0.00158d0001e13db7.temperature"; //4
        const id_TW = "zigbee.0.00158d0001e09bc7.temperature"; //5
        //PIR--------------------------------------------------------------
        const id_OS = "zigbee.0.00158d000423bfd0.illuminance"; //6
        const id_IS = "zigbee.0.00158d000253e897.illuminance"; //7
        
        //1 
        schedule("1 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("TA " + getState(id_TA).val)
            });
            log("TA " + getState(id_TA).val);
            //2
        });
        schedule("2 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("TK " + getState(id_TK).val)
            });
            log("TK " + getState(id_TK).val);
        });
        //3
        schedule("3 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("TN " + getState(id_TN).val)
            });
            log("TN " + getState(id_TN).val);
        });
        //4
        schedule("4 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("TS " + getState(id_TS).val)
            });
            log("TS " + getState(id_TS).val);
        });
        //5
        schedule("5 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("TW " + getState(id_TW).val)
            });
            log("TW " + getState(id_TW).val);
        });
        //6
        schedule("6 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("OS " + getState(id_OS).val)
            });
            log("OS " + getState(id_OS).val);
        });
        //7   
        schedule("7 * * * *", function () {
            sendTo('telegram.0', 'send', {
                text: ("IS " + getState(id_IS).val)
            });
            log("IS " + getState(id_IS).val);
        });
        
        

        nur jetzt werden mir jede Menge Telegrame von jedem Gerät geschickt. Was mache ich noch falsch? Der Plan war ja, 7 Telegrame zu jeder Stunde, habe gerade 454 Telegramme bekommen.

        paul53P 1 Antwort Letzte Antwort
        0
        • M michihorn

          @paul53 Hab ich gemacht:

          /*****Giethoorn sendet Temperaturen an Castrop *****************
          **    März 2021
          **    
          **    
          **    erstellt: 10.03.21
          **    geä: 11.03.21
          ***********************************************************************/
          //Temperatur Sensoren--------------------------------------------
          const id_TA = "zigbee.0.00158d000444cb23.temperature"; //1
          const id_TK = "zigbee.0.00158d0001e09c1a.temperature"; //2
          const id_TN = "zigbee.0.00158d0001e0821b.temperature"; //3
          const id_TS = "zigbee.0.00158d0001e13db7.temperature"; //4
          const id_TW = "zigbee.0.00158d0001e09bc7.temperature"; //5
          //PIR--------------------------------------------------------------
          const id_OS = "zigbee.0.00158d000423bfd0.illuminance"; //6
          const id_IS = "zigbee.0.00158d000253e897.illuminance"; //7
          
          //1 
          schedule("1 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("TA " + getState(id_TA).val)
              });
              log("TA " + getState(id_TA).val);
              //2
          });
          schedule("2 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("TK " + getState(id_TK).val)
              });
              log("TK " + getState(id_TK).val);
          });
          //3
          schedule("3 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("TN " + getState(id_TN).val)
              });
              log("TN " + getState(id_TN).val);
          });
          //4
          schedule("4 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("TS " + getState(id_TS).val)
              });
              log("TS " + getState(id_TS).val);
          });
          //5
          schedule("5 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("TW " + getState(id_TW).val)
              });
              log("TW " + getState(id_TW).val);
          });
          //6
          schedule("6 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("OS " + getState(id_OS).val)
              });
              log("OS " + getState(id_OS).val);
          });
          //7   
          schedule("7 * * * *", function () {
              sendTo('telegram.0', 'send', {
                  text: ("IS " + getState(id_IS).val)
              });
              log("IS " + getState(id_IS).val);
          });
          
          

          nur jetzt werden mir jede Menge Telegrame von jedem Gerät geschickt. Was mache ich noch falsch? Der Plan war ja, 7 Telegrame zu jeder Stunde, habe gerade 454 Telegramme bekommen.

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

          @michihorn sagte: habe gerade 454 Telegramme bekommen.

          Die waren wohl noch im Puffer aus der Verschachtelung.

          @michihorn sagte in Schedule jede Stunde:

          Der Plan war ja, 7 Telegrame zu jeder Stunde,

          Das sollte jetzt so erfolgen.

          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

          M 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @michihorn sagte: habe gerade 454 Telegramme bekommen.

            Die waren wohl noch im Puffer aus der Verschachtelung.

            @michihorn sagte in Schedule jede Stunde:

            Der Plan war ja, 7 Telegrame zu jeder Stunde,

            Das sollte jetzt so erfolgen.

            M Offline
            M Offline
            michihorn
            schrieb am zuletzt editiert von
            #5

            @paul53 Leider nein, es sind erst 3 Minuten rum und ich habe bereits 155 Telgrams

            paul53P 1 Antwort Letzte Antwort
            0
            • M michihorn

              @paul53 Leider nein, es sind erst 3 Minuten rum und ich habe bereits 155 Telgrams

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

              @michihorn sagte: ich habe bereits 155 Telgrams

              Auch so viele Log-Einträge aus dem Skript?

              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

              M 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @michihorn sagte: ich habe bereits 155 Telgrams

                Auch so viele Log-Einträge aus dem Skript?

                M Offline
                M Offline
                michihorn
                schrieb am zuletzt editiert von
                #7

                @paul53 Jede Menge, aktuell steht folgendes:
                (8008) Cannot send message [chatId - 702589553]: Error: ETELEGRAM: 429 Too Many Requests: retry after 3

                paul53P 1 Antwort Letzte Antwort
                0
                • M michihorn

                  @paul53 Jede Menge, aktuell steht folgendes:
                  (8008) Cannot send message [chatId - 702589553]: Error: ETELEGRAM: 429 Too Many Requests: retry after 3

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

                  @michihorn
                  Starte mal ioBroker neu.

                  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

                  M 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @michihorn
                    Starte mal ioBroker neu.

                    M Offline
                    M Offline
                    michihorn
                    schrieb am zuletzt editiert von
                    #9

                    @paul53 Jap, das war es.
                    Das Script läuft wie es soll.
                    Danke

                    1 Antwort Letzte Antwort
                    0

                    Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                    Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                    Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                    Registrieren Anmelden
                    Antworten
                    • In einem neuen Thema antworten
                    Anmelden zum Antworten
                    • Älteste zuerst
                    • Neuste zuerst
                    • Meiste Stimmen


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    527

                    Online

                    32.8k

                    Benutzer

                    82.7k

                    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