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. Frage an Java Experten zum Script.

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.4k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

Frage an Java Experten zum Script.

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
12 Beiträge 5 Kommentatoren 1.8k Aufrufe
  • Ä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.
  • K Offline
    K Offline
    knopers1
    schrieb am zuletzt editiert von
    #1

    Hallo Leute,

    ich versuche ein Script für meine Bedürfnisse anzupassen.

    Das Java-Script soll alle 3 min. von einer Webseite den Zählerstand abfragen.

    Ich finde im Java Script folgende Zeile:

    schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen

    Welcher Wert ist Zur Zeit eingestellt?

    Handels sich hier um ein Cron-Daemon Eintrag???

    Wenn ich den Wert auf drei min. eingestellt haben möchte, sollte es nicht so aussehen? Oder liege ich da komplet daneben…?

    */3 * * * *

    schedule ("*/3 * * * *", function(){ // alle 3 Minuten aufrufen

    var request = require('request');
    var parseString = require('xml2js').parseString;
    
    var url="http://192.168.1.43"; // hier die Adresse der Webseite eintragen
    
    var GaszaehlerId = "Gaszaehler.Wert"; // Der Wert steht in "javascript.0."
    
    function processData(body){
       parseString(body, function (err, result) {
          // log(JSON.stringify(result.MyHome.ESP8266_GasMeter[0].data[4].$.value));
          if (!err)
              setState(GaszaehlerId,result.MyHome.ESP8266_GasMeter[0].data[4].$.value);
       });   
    }
    
    createState(GaszaehlerId,
              0, 
              false,
              {
                type:"number",
                unit:"m³"
              });
    
    schedule ("* * * * *", function(){ // alle 3 Minuten aufrufen
        request({  
            uri: url,
            method: "GET",
            timeout: 10000,
            followRedirect: true,
            maxRedirects: 10
        }, function(error, response, body) {
            if (!error) {
                if (response.statusCode == 200) {
                    processData(body);    
                }
            } else log("Fehler: "+error);
        });    
    })
    

    HP Microserver Gen8, RPI-4, IoBroker,

    1 Antwort Letzte Antwort
    0
    • ThisoftT Offline
      ThisoftT Offline
      Thisoft
      schrieb am zuletzt editiert von
      #2

      JA, das hast du vollkommen richtig erkannt

      schedule ("*/3 * * * *", function(){
      

      ruft die Funktion alle 3 Minuten auf.

      22 HM-Geräte; PivCCU2 auf RasPi

      ioBroker-Multihost; Ubuntu-Master auf Intel-Atom und 3 RasPi-Clients

      1 Antwort Letzte Antwort
      0
      • T Offline
        T Offline
        tempestas
        schrieb am zuletzt editiert von
        #3

        bin kein Experte, sollte aber stimmen.

        Teil 1 sind die Minuten. Du willst, dass es immer bei durch drei teilbaren Minuten ausgeführt wird.

        <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

        1 Antwort Letzte Antwort
        0
        • K Offline
          K Offline
          knopers1
          schrieb am zuletzt editiert von
          #4

          Danke Thisoft,

          auf Dich kann ma sich immer verlassen.

          Kannst Du mir noch mal sagen, was eingestellt worden war?

          Etwa nur einmal beim Reboot ?

          *     *     *     *     *  Befehl der ausgeführt werden soll
          -     -     -     -     -
          |     |     |     |     |
          |     |     |     |     +----- Wochentag (0 - 7) (Sonntag ist 0 und 7; oder Namen, siehe unten)
          |     |     |     +------- Monat (1 - 12)
          |     |     +--------- Tag (1 - 31)
          |     +----------- Stunde (0 - 23)
          +------------- Minute (0 - 59; oder Namen, siehe unten)
          

          HP Microserver Gen8, RPI-4, IoBroker,

          1 Antwort Letzte Antwort
          0
          • paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #5

            @knopers1:

            was eingestellt worden war? Etwa nur einmal beim Reboot ? `
            Nein, jede Minute.

            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
            • K Offline
              K Offline
              knopers1
              schrieb am zuletzt editiert von
              #6

              Danke Paul53

              habe noch im Netzt so ein Beispiel gefunden…

              Einen Cronjob jede Minute ausführen

              /1 * * * * /user/skript-pfad/skript.sh

              bin jetzt aber komplett verwirrt...

              es dürfen max. 5 Sternchen sein.... Sterne stehen für immer! Richtig?


              Für "alle drei min" sollte das dann so aussehen:

              /3 * * * *

              Für "jede min." /1 * * * *

              Kollege Thisoft gibt aber noch mal das hier:

              schedule ("*/3 * * * *", function(){

              Ist dort vorne ein Stern nicht zuviel? Versehen oder doch richtig?

              Sollte es nicht so Aussehen?

              schedule ("/3 * * * *", function(){

              Sorry für die Fragen.

              *     *     *     *     *  Befehl der ausgeführt werden soll
              -     -     -     -     -
              |     |     |     |     |
              |     |     |     |     +----- Wochentag (0 - 7) (Sonntag ist 0 und 7; oder Namen, siehe unten)
              |     |     |     +------- Monat (1 - 12)
              |     |     +--------- Tag (1 - 31)
              |     +----------- Stunde (0 - 23)
              +------------- Minute (0 - 59; oder Namen, siehe unten)
              

              HP Microserver Gen8, RPI-4, IoBroker,

              1 Antwort Letzte Antwort
              0
              • AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #7

                https://github.com/node-schedule/node-s … scheduling

                Der JavaScript-Adapter nutzt intern das obige Modul, was mit einem 6-stelligen Code Sekunden unterstützt.

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                1 Antwort Letzte Antwort
                0
                • K Offline
                  K Offline
                  knopers1
                  schrieb am zuletzt editiert von
                  #8

                  Geil, demnach scheint die Antwort vom Thisoft richtig sein Stimmts?

                  schedule ("*/3 * * * *", function(){
                  

                  HP Microserver Gen8, RPI-4, IoBroker,

                  1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    schrieb am zuletzt editiert von
                    #9

                    Woops, ich hab da wohl ein Leerzeichen zu viel gesehen. Kommando zurück!

                    "*/3 * * * *" bedeutet alle 3 Minuten. Ob das gleichbedeutend ist mit "/3 * * * *" weiß ich allerdings nicht, das habe ich so noch nicht gesehen. Der Entwickler des Pakets gibt ebenfalls folgendes Beispiel:
                    > Execute a cron job every 5 Minutes = */5 * * * *

                    Trotzdem kannst du z.b. mit "4 */5 * * * *" z.B. alle 5 Minuten zur 4. Sekunde etwas ausführen lassen.

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    1 Antwort Letzte Antwort
                    0
                    • paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #10

                      @knopers1:

                      es dürfen max. 5 Sternchen sein `
                      In neueren Versionen dürfen es optional auch 6 Positionen sein mit der ersten Position für Sekunden.
                      @knopers1:

                      Sterne stehen für immer! Richtig? `
                      Ja.
                      @knopers1:

                      Kollege Thisoft gibt aber noch mal das hier:

                      schedule ("*/3 * * * *", function(){ `
                      Ich kenne auch nur diese Version für alle 3 Minuten. Das ohne Stern vor dem Schrägstrich kann funktionieren, aber da es nicht dokumentiert ist, würde ich es so nicht anwenden.

                      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
                      • K Offline
                        K Offline
                        knopers1
                        schrieb am zuletzt editiert von
                        #11

                        @AlCalzone:

                        Woops, ich hab da wohl ein Leerzeichen zu viel gesehen. Kommando zurück!

                        "*/3 * * * *" bedeutet alle 3 Minuten. Ob das gleichbedeutend ist mit "/3 * * * *" weiß ich allerdings nicht, das habe ich so noch nicht gesehen. Der Entwickler des Pakets gibt ebenfalls folgendes Beispiel:
                        > Execute a cron job every 5 Minutes = */5 * * * *

                        Trotzdem kannst du z.b. mit "4 */5 * * * *" z.B. alle 5 Minuten zur 4. Sekunde etwas ausführen lassen. `

                        woow, jetzt bin ich total verwirt…

                        Wenn das so ist, müßte es nicht so aussehen?

                        "4/5 * * * *"

                        Du hast ein Beispiel jetzt mit sieben Stellen angegeben. Stimmt das?

                        EDIT: Gut. Dann verbleibe ich eben bei der Theori vom Paul53

                        schedule ("*/3 * * * *", function(){ // Alle drei min.bozogen auf den 6 Stelligen Cronjob mit sekunden! :D

                        HP Microserver Gen8, RPI-4, IoBroker,

                        1 Antwort Letzte Antwort
                        0
                        • AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #12

                          @knopers1:

                          Du hast ein Beispiel jetzt mit sieben Stellen angegeben. Stimmt das? `
                          Nein, da ist kein Leerzeichen zwischen "*", "/" und "5":

                          4 */5 * * * *
                           ^   ^ ^ ^ ^
                          
                          

                          5 Leerzeichen, 6 Stellen

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          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

                          712

                          Online

                          32.5k

                          Benutzer

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