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. ioBroker Allgemein
  4. Variable per Script z. B. mit Cron lässt sich nicht setzen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Variable per Script z. B. mit Cron lässt sich nicht setzen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
19 Beiträge 5 Kommentatoren 2.4k 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.
  • F Offline
    F Offline
    Fitti
    schrieb am zuletzt editiert von
    #1

    Hi,

    ich versuche mittels Skript zu bestimmten Zeiten eine Variable zu setzen

    // Variablen anlegen
    createState("VIS.info1_anzeigen", {name: 'Info1 anzeigen'});
    
    // Info1
    schedule("47 19 * * 1-5", function () {
        setState("VIS.info1_anzeigen", true);
    });
    
    schedule("48 19 * * 1-5", function () {
        setState("VIS.info1_anzeigen", false);
    });
    

    Den Code dazu habe ich mir aus der Doku geholt.

    Um die entsprechende Zeit bekomme ich aber eine Warnung im Log:

    javascript-0 2015-09-10 19:47:00 warn State "VIS.info1_anzeigen" not found

    Was läuft hier falsch? Die Variable wird auch nicht gesetzt - aber sie wird angelegt.

    Danke im Voraus,

    Fitti

    "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
    Plural von Status ist auch Status!

    1 Antwort Letzte Antwort
    0
    • BluefoxB Offline
      BluefoxB Offline
      Bluefox
      schrieb am zuletzt editiert von
      #2

      Danke für Fehlermeldung. Fixed. :!:

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

        Danke, die Korrektur war auch erforderlich, um im Reiter "Objekte" neu erstellte Datenpunkte sofort nutzen zu können. :D

        Bisher musste ich den ioBroker-Dienst neu starten.

        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
        • F Offline
          F Offline
          Fitti
          schrieb am zuletzt editiert von
          #4

          Und ich suchte den Fehler bei mir…. :shock:

          Fitti

          "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
          Plural von Status ist auch Status!

          1 Antwort Letzte Antwort
          0
          • BluefoxB Offline
            BluefoxB Offline
            Bluefox
            schrieb am zuletzt editiert von
            #5

            @Fitti:

            Und ich suchte den Fehler bei mir…. :shock:

            Fitti `
            Geht es?

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

              Sinnvoll wäre es, nach dem Erstellen eines Datenpunktes im Reiter "Objekte" diesen auch zu initialisieren (setState) und zwar mit dem Default-Wert (common.def). Wozu ist dieser sonst gut ?

              Jetzt erscheint der neue Datenpunkt erst im Reiter "Zustände" <u>nachdem</u> per Javascript ein setState() darauf ausgeführt wurde.

              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
              • BluefoxB Offline
                BluefoxB Offline
                Bluefox
                schrieb am zuletzt editiert von
                #7

                Nicht immer createState bekommt "def".

                Ich habe versucht jetzt mit "null" erzeugen.

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

                  @Bluefox:

                  Ich habe versucht jetzt mit "null" erzeugen. `
                  Das hat anscheinend nicht funktioniert. Der Zustand erscheint im Reiter "Zustände" erst, nachdem ich setState() auf den Datenpunkt angewendet habe.
                  @Bluefox:

                  Nicht immer createState bekommt "def". `
                  Vorschlag: Wenn "common.def" existiert, dann mit "def" initialisieren, sonst mit "null".

                  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
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    schrieb am zuletzt editiert von
                    #9

                    @paul53:

                    @Bluefox:

                    Ich habe versucht jetzt mit "null" erzeugen. `
                    Das hat anscheinend nicht funktioniert. Der Zustand erscheint im Reiter "Zustände" erst, nachdem ich setState() auf den Datenpunkt angewendet habe.
                    @Bluefox:

                    Nicht immer createState bekommt "def". Vorschlag: Wenn "common.def" existiert, dann mit "def" initialisieren, sonst mit "null".
                    So habe ich doch implementiert:

                    https://github.com/ioBroker/ioBroker.ja … 28cba268eb

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

                      @Bluefox:

                      So habe ich doch implementiert: `
                      ioBroker macht es nicht im Reiter "Objekte", wenn ein Objekt neu erstellt wurde, denn es ist in ioBroker.javascript implementiert.

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

                        Ab ioBroker Admin 0.5.11 funktioniert es nun super :D

                        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
                        • F Offline
                          F Offline
                          Fitti
                          schrieb am zuletzt editiert von
                          #12

                          @Bluefox:

                          Geht es? `
                          Ja - bestens. Danke!

                          @paul53:

                          Ab ioBroker Admin 0.5.11 funktioniert es nun super :D `
                          Ich warte immer brav, bis die GUI mir "grünes Licht" gibt - sprich, bis ich das Update angeboten bekomme. Zur Zeit ist admin 0.5.9

                          Einige Schreiber hier im Forum haben aber immer wieder höhere Versionsnummern, als bei mir normal vorhanden.

                          Wie kommt ihr eigentlich an die Versionen? Und sollte ich lieber warten, bis die GUI es anbietet oder ist das nur eine normale Anzeige-Verzögerung?

                          @paul53:

                          …und zwar mit dem Default-Wert (common.def). Wozu ist dieser sonst gut ? `
                          Als normaler Anwender muss ich mir hier nicht drum kümmern, oder?

                          <size size="85">Hätte jetzt keine Ahnung, wie ich wo und wozu die common.def benützen sollte.</size>

                          Fitti

                          "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                          Plural von Status ist auch Status!

                          1 Antwort Letzte Antwort
                          0
                          • P Offline
                            P Offline
                            pix
                            schrieb am zuletzt editiert von
                            #13

                            @Fitti:

                            Ich warte immer brav, bis die GUI mir "grünes Licht" gibt - sprich, bis ich das Update angeboten bekomme. `
                            ich warte eigentlich auch immer, aber oft werden mir die Updates nicht angeboten. Daher schau ich gelegentlich mit

                            ./iobroker update
                            ````welche Adapter nicht mehr auf dem neuesten Stand sind.
                            
                            Wenn wichtige dabei sind, stoppe ich iobroker und lasse im Terminal ein Upgrade laufen
                            

                            ./iobroker stop
                            ./iobroker upgrade
                            ./iobroker start

                            Nicht so gedacht, aber geht.
                            
                            Gruß
                            
                            Pix

                            ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                            1 Antwort Letzte Antwort
                            0
                            • HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #14

                              Hallo fitti,
                              @Fitti:

                              Ich warte immer brav, bis die GUI mir "grünes Licht" gibt - sprich, bis ich das Update angeboten bekomme. `
                              Ich habe mich letztens auch darüber gewundert, dass die GUI mir eigenständig eine neue Version anbietet, aber Standard ist, dass du selber so etwas anstoßen musst.

                              Dazu musst du im Reiter Adapter auf das icon "update adapter information" (erstes Icon im zweiten Block) oben links klicken.

                              Finde auf die Schnelle keinen passenden Screenshot EDIT: Da isser!
                              144_adapter_updaten.jpg

                              Dann bekommst du auch die 0.5.11 angeboten und wahrscheinlich viele andere mehr.

                              Auch ein neuer js-controller im Reiter "Hosts"

                              Diesen zuerst updaten, danach Reboot des rasPi.

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • F Offline
                                F Offline
                                Fitti
                                schrieb am zuletzt editiert von
                                #15

                                Hi Rainer,

                                das mache ich immer so im wöchentlichen Turnus, dass ich oben links den Update abrufe. Aber da ist mir aufgefallen, dass der eine oder andere Eintrag hier bei irgendeinem Adapter manchmal eine höhere Version hat.

                                Ich bin nun kein Update-Junkie. Doch der eine oder andere Fehler ist ja noch da und dann schaue ich immer, ob dieser bereits gelöst wurde.

                                Aber die 0.5.11 wird mir jetzt angeboten. Danke!

                                "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                                Plural von Status ist auch Status!

                                1 Antwort Letzte Antwort
                                0
                                • HomoranH Nicht stören
                                  HomoranH Nicht stören
                                  Homoran
                                  Global Moderator Administrators
                                  schrieb am zuletzt editiert von
                                  #16

                                  Vielleicht hat ja bei dir der böse Browser Cache zugeschlagen und dir bis heute die Versionen bis 0.5.11 verheimlicht :mrgreen:

                                  Gruß

                                  Rainer

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  1 Antwort Letzte Antwort
                                  0
                                  • F Offline
                                    F Offline
                                    Fitti
                                    schrieb am zuletzt editiert von
                                    #17

                                    <color color="#888">Ich packe es mal hier rein, da es sich um Variablen setzen handelt.

                                    Nach einem ioBroker-Neustart mittels setState in einem Skript wird die variable nicht gesetzt. Beim zweiten Durchlauf dann ja.

                                    createState("VIS.InternAlarmZustandsanzeige", {name: 'VIS Interner Alarm Zustandsanzeige'}); // INTERNER ALARM:=> 0=Alarm deaktiviert; 1=in Arbeit 2=scharf
                                    createState("VIS.ExternAlarmZustandsanzeige", {name: 'VIS Externer Alarm Zustandsanzeige'}); // EXTERNER ALARM:=> 0=Alarm deaktiviert; 1=in Arbeit 2=scharf
                                    
                                    // Setzen der Ausgangslage beim Starten des Skriptes:
                                    var status_intern = getState("hm-rega.0.14247").val;  /*interner_alarm_an*/
                                    var status_extern = getState("hm-rega.0.11162").val;  /*externer_alarm_an*/
                                    
                                    log ("Status Interner Alarm: "+ status_intern, 'info');
                                    log ("Status Externer Alarm: "+ status_extern, 'info');
                                    
                                    if (status_intern === true) {
                                        setState("VIS.InternAlarmZustandsanzeige", 2);
                                        log ("Setze interner Alarm auf true", 'info');
                                    } else {
                                        setState("VIS.InternAlarmZustandsanzeige", 0);
                                        log ("Setze interner Alarm auf false", 'info');
                                    }
                                    
                                    if (status_extern === true) {
                                        setState("VIS.ExternAlarmZustandsanzeige", 2);
                                        log ("Setze externer Alarm auf true", 'info');
                                    } else {
                                        setState("VIS.ExternAlarmZustandsanzeige", 0);
                                        log ("Setze externer Alarm auf false", 'info');
                                    }
                                    

                                    Nach dem ioBroker Neustart ist seltsamerweise der Zustand bei Beiden Variablen "1". Das Skript lief aber durch.

                                    Ich hatte es auch schon, dass eine Var 0 und die andere 1 war. Liegt hier noch irgendein Timingfehler vor?

                                    Durch die if-Abfrage müsste er ja bei unbestimmten Zustand mindestens auf 0 setzen, oder?

                                    Viele Grüße,

                                    Fitti

                                    "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                                    Plural von Status ist auch Status!

                                    1 Antwort Letzte Antwort
                                    0
                                    • BluefoxB Offline
                                      BluefoxB Offline
                                      Bluefox
                                      schrieb am zuletzt editiert von
                                      #18

                                      @Fitti:

                                      <color color="#888">Ich packe es mal hier rein, da es sich um Variablen setzen handelt.

                                      Nach einem ioBroker-Neustart mittels setState in einem Skript wird die variable nicht gesetzt. Beim zweiten Durchlauf dann ja.

                                      createState("VIS.InternAlarmZustandsanzeige", {name: 'VIS Interner Alarm Zustandsanzeige'}); // INTERNER ALARM:=> 0=Alarm deaktiviert; 1=in Arbeit 2=scharf
                                      createState("VIS.ExternAlarmZustandsanzeige", {name: 'VIS Externer Alarm Zustandsanzeige'}); // EXTERNER ALARM:=> 0=Alarm deaktiviert; 1=in Arbeit 2=scharf
                                      
                                      // Setzen der Ausgangslage beim Starten des Skriptes:
                                      var status_intern = getState("hm-rega.0.14247").val;  /*interner_alarm_an*/
                                      var status_extern = getState("hm-rega.0.11162").val;  /*externer_alarm_an*/
                                      
                                      log ("Status Interner Alarm: "+ status_intern, 'info');
                                      log ("Status Externer Alarm: "+ status_extern, 'info');
                                      
                                      if (status_intern === true) {
                                          setState("VIS.InternAlarmZustandsanzeige", 2);
                                          log ("Setze interner Alarm auf true", 'info');
                                      } else {
                                          setState("VIS.InternAlarmZustandsanzeige", 0);
                                          log ("Setze interner Alarm auf false", 'info');
                                      }
                                      
                                      if (status_extern === true) {
                                          setState("VIS.ExternAlarmZustandsanzeige", 2);
                                          log ("Setze externer Alarm auf true", 'info');
                                      } else {
                                          setState("VIS.ExternAlarmZustandsanzeige", 0);
                                          log ("Setze externer Alarm auf false", 'info');
                                      }
                                      

                                      Nach dem ioBroker Neustart ist seltsamerweise der Zustand bei Beiden Variablen "1". Das Skript lief aber durch.

                                      Ich hatte es auch schon, dass eine Var 0 und die andere 1 war. Liegt hier noch irgendein Timingfehler vor?

                                      Durch die if-Abfrage müsste er ja bei unbestimmten Zustand mindestens auf 0 setzen, oder?

                                      Viele Grüße,

                                      Fitti `

                                      Es muss so aussehen:

                                      // Call ready after the variables created.
                                      function ready() {
                                        // Setzen der Ausgangslage beim Starten des Skriptes:
                                        var status_intern = getState("hm-rega.0.14247").val;  /*interner_alarm_an*/
                                        var status_extern = getState("hm-rega.0.11162").val;  /*externer_alarm_an*/
                                      
                                        log ("Status Interner Alarm: "+ status_intern, 'info');
                                        log ("Status Externer Alarm: "+ status_extern, 'info');
                                      
                                        if (status_intern === true) {
                                            setState("VIS.InternAlarmZustandsanzeige", 2);
                                            log ("Setze interner Alarm auf true", 'info');
                                        } else {
                                            setState("VIS.InternAlarmZustandsanzeige", 0);
                                            log ("Setze interner Alarm auf false", 'info');
                                        }
                                      
                                        if (status_extern === true) {
                                            setState("VIS.ExternAlarmZustandsanzeige", 2);
                                            log ("Setze externer Alarm auf true", 'info');
                                        } else {
                                            setState("VIS.ExternAlarmZustandsanzeige", 0);
                                            log ("Setze externer Alarm auf false", 'info');
                                        }
                                      });
                                      
                                      createState("VIS.InternAlarmZustandsanzeige", {name: 'VIS Interner Alarm Zustandsanzeige'}); // INTERNER ALARM:=> 0=Alarm deaktiviert; 1=in Arbeit 2=scharf
                                      createState("VIS.ExternAlarmZustandsanzeige", {name: 'VIS Externer Alarm Zustandsanzeige'}, ready); // EXTERNER ALARM:=> 0=Alarm deaktiviert; 1=in Arbeit 2=scharf
                                      
                                      
                                      1 Antwort Letzte Antwort
                                      0
                                      • F Offline
                                        F Offline
                                        Fitti
                                        schrieb am zuletzt editiert von
                                        #19

                                        Danke. Alles klar jetzt.

                                        Fitti

                                        "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                                        Plural von Status ist auch Status!

                                        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
                                        FAQ Cloud / IOT
                                        HowTo: Node.js-Update
                                        HowTo: Backup/Restore
                                        Downloads
                                        BLOG

                                        646

                                        Online

                                        32.7k

                                        Benutzer

                                        82.4k

                                        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