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

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    1.1k

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.6k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    6.1k

Frage an Java Experten zum Script.

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
12 Beiträge 5 Kommentatoren 2.0k 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: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

            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: Asus PN 42 / N100 / 8 GB / 500 GB; Proxmox mit 2 VM (iob / openCCU)

                      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

                          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

                          424

                          Online

                          33.0k

                          Benutzer

                          83.6k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2026
                          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