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. [gelöst] Benötige hilfe bei "einfachem" Script

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

  • 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

[gelöst] Benötige hilfe bei "einfachem" Script

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
6 Beiträge 3 Kommentatoren 539 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.
  • J Offline
    J Offline
    Jankb89
    schrieb am zuletzt editiert von
    #1

    Hallo!

    Ich bräuchte Hilfe.

    Für die meisten warscheinlich eine Kleinigkeit aber ich komme nicht weiter, da ich gerade erst mit Java angefangen habe.

    Folgende Situation.

    iCal Adapter liefert vier Kalendervariablen (Früh,Spät,Nacht und Urlaub) jeweils mit true oder false.

    Ich möchte diese vier Variablen in einer zusammenfassen.

    Dazu das angehängte Script. Leider stellt er die Variable bzw. die Werteliste nicht um.

    Muss ich bei einer Werteliste was anderes als setState benutzen?

    Ich hoffe mir hilft jemand.

    Grüße!

    // Timer
    
        schedule ("*/30 * * * *",function() 
        {
    
    // Früh
    
        var current_state1 = getState("ical.0.events.0.today.Früh"/*Früh*/).val;
    
       if (current_state1 === true) 
    
               setState("hm-rega.0.9729"/*Früh*/, 0);
    
    // Spät
    
        var current_state2 = getState("ical.0.events.0.today.Spät"/*Spät*/).val;
    
       if (current_state2 === true) 
    
               setState("hm-rega.0.9729"/*Spät*/, 1);
    
    // Nacht
    
        var current_state3 = getState("ical.0.events.0.today.Nacht"/*Nacht*/).val;
    
       if (current_state3 === true) 
    
               setState("hm-rega.0.9729"/*Nacht*/, 2);
    
    // Frei
    
        var current_state4 = getState("ical.0.events.0.today.Urlaub"/*Urlaub*/).val;
    
       if (current_state4 === true) 
    
               setState("hm-rega.0.9729"/*Frei*/, 3);
    
    });
    
    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      DavidFD
      schrieb am zuletzt editiert von
      #2

      Hast du mit

      Console.log("meine ausgabe")
      

      mal getestet ob auch eine deiner Prüfungen aktiv wird?

      Es ist ical.0.events.0.today.Nacht ein Boolean oder ein String gespeichert?

      2 Raspis als Multihost, Homematic, Xiaomi und Hue.

      Bastelprojekte auf www.derfrickler.de zu finden.

      Aktuell:

      1 Antwort Letzte Antwort
      0
      • J Offline
        J Offline
        Jankb89
        schrieb am zuletzt editiert von
        #3

        Ich glaube ich habe gleich mehrere Fehler mit den Klammern gemacht.

        Im einzelnen funktioniert es.

        Habe also für jede Variable ein Script angelegt.

        Der Tipp mit dem Consolenlog war hilfreich.

        Jetzt müsste ich gucken wie ich die zusammengefüht bekomme und mit:

        schedule ("*/30 * * * *",function()
        

        versehe.

        
        var current_state1 = getState("ical.0.events.0.today.Früh"/*Früh*/).val;
        
        if (current_state1 === true) 
        
        setState("hm-rega.0.2360"/*Früh*/, 0);
        
        
        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #4

          @Jankb89:

          Muss ich bei einer Werteliste was anderes als setState benutzen? `
          Nein, setState() passt.
          @Jankb89:

                     setState("hm-rega.0.9729"/*Früh*/, 0);
                
                    
          // Spät
          
              var current_state2 = getState("ical.0.events.0.today.Spät"/*Spät*/).val;
          
             if (current_state2 === true) 
           
                     setState("hm-rega.0.9729"/*Spät*/, 1);
          
          ```` `  
          

          Weshalb hat die SV mit eier ID ("hm-rega.0.9729") unterschiedliche Namen (Früh/Spät) ?

          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
            #5

            @Jankb89:

            iCal Adapter liefert vier Kalendervariablen (Früh,Spät,Nacht und Urlaub) jeweils mit true oder false. `
            Dann müssen diese Datenpunkte sicherlich nur einmal täglich abgefragt werden ?

            schedule ("3 3 * * *",function() { // täglich um 3:03 Uhr
               var sv = 3; // Urlaub
               if(getState("ical.0.events.0.today.Früh"/*Früh*/).val) sv = 0;
               if(getState("ical.0.events.0.today.Spät"/*Spät*/).val) sv = 1;
               if(getState("ical.0.events.0.today.Nacht"/*Nacht*/).val) sv = 2;
               setState("hm-rega.0.9729", sv); // Werteliste-SV
            });
            
            

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

              @paul53:

              @Jankb89:

              Muss ich bei einer Werteliste was anderes als setState benutzen? `
              Nein, setState() passt.
              @Jankb89:

                         setState("hm-rega.0.9729"/*Früh*/, 0);
                    
                        
              // Spät
              
                  var current_state2 = getState("ical.0.events.0.today.Spät"/*Spät*/).val;
              
                 if (current_state2 === true) 
               
                         setState("hm-rega.0.9729"/*Spät*/, 1);
              
              ```` `  
              

              Weshalb hat die SV mit eier ID ("hm-rega.0.9729") unterschiedliche Namen (Früh/Spät) ? `

              Es wird mit setState 0 auf früh und mit 1 auf spät gesetzt.

              Ja die Abfrage genügt 1x tägl. zum testen hatte ich kürzer gesetzt-

              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

              371

              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