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. Hilfe für Script mit mehreren Werten gesucht

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

Hilfe für Script mit mehreren Werten gesucht

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
5 Beiträge 2 Kommentatoren 508 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.
  • ChaotC Offline
    ChaotC Offline
    Chaot
    schrieb am zuletzt editiert von
    #1

    Ich habe ein Problem das ich irgendwie nicht gelöst bekomme und hoffe es kann mir hier jemand helfen.

    Ich bekomme aus einem Objekt verschiedene Werte geliefert.

    Diese Werte möchte ich jetzt in VIS darstellen. Dazu habe ich gedacht das ich einen Datenpunkt schreiben lasse und dem entsprechend dem Wert eine Zahl zuordne.

    In VIS nehme ich dann ein "image 8" und lese die entsprechenden Zahlen aus.

    Am Ende soll das eine Farbfläche werden die entsprechend der Werte die Farbe ändert.

    Die Werte bewegen sich zwischen 0 und 500.

    Dabei sollen dann folgende Werte eingeteilt werden:

    0-50 = 0

    51-100 = 1

    101-150 = 2

    151-200 = 3

    201-300 = 4

    301-500 = 5

    Mir fällt aber beim besten Willen nichts ein wie ich das realisieren könnte.

    Vielleicht bin ich einfach nur zu alt für den Sch… :(

    ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

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

      @Chaot:

      Die Werte bewegen sich zwischen 0 und 500.

      Dabei sollen dann folgende Werte eingeteilt werden:

      0-50 = 0

      51-100 = 1

      101-150 = 2

      151-200 = 3

      201-300 = 4

      301-500 = 5 `

      var y = 0;
      if(x > 50) y = 1;
      if(x > 100) y = 2;
      if(x > 150) y = 3;
      if(x > 200) y = 4;
      if(x > 300) y = 5;
      setState(idFarbe, y, true);
      

      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
      • ChaotC Offline
        ChaotC Offline
        Chaot
        schrieb am zuletzt editiert von
        #3

        Ich Danke dir ganz herzlich.

        Ich bin was Javasript angeht absoluter Anfänger und renne mit solchen Problemen voll an die Wand.

        Dabei ist es im nachhinein betrachtet ja wirklich simpel :oops:

        Dank deiner Hilfe habe ich jetzt endlich meine Anzeigefläche gebastelt:

        var Luftguete = "javascript.1.Luftguete"/*Luftguete*/;
        var x = getState(Luftguete).val;
        
        var y = 0;
        if(x > 50) y = 1;
        if(x > 100) y = 2;
        if(x > 150) y = 3;
        if(x > 200) y = 4;
        if(x > 300) y = 5;
        setState("javascript.1.Luftqualität"/*Luftqualität*/, y, true);
        

        ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

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

          Wenn dies das ganze Skript ist, solltest Du bedenken, dass die Befehle nur <u>einmal</u> bei Skriptstart ausgeführt werden. Es wird ein Trigger benötigt.

          const Luftguete = "javascript.1.Luftguete"/*Luftguete*/;
          
          function setQualitaet(x) { 
            var y = 0;
            if(x > 50) y = 1;
            if(x > 100) y = 2;
            if(x > 150) y = 3;
            if(x > 200) y = 4;
            if(x > 300) y = 5;
            setState("javascript.1.Luftqualität"/*Luftqualität*/, y, true);
          }
          
          setQualitaet(getState(Luftguete).val); // Skriptstart
          
          on(Luftguete, function(dp) { // triggert bei Wertänderung
            setQualitaet(dp.state.val);
          });
          
          

          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
          • ChaotC Offline
            ChaotC Offline
            Chaot
            schrieb am zuletzt editiert von
            #5

            Oh, Danke.

            Das habe ich wirklich nicht bedacht.

            Ich habe mich schon gewundert warum das nicht aktualisiert :oops:

            Hier ist übrigens die ganze Geschichte:

            viewtopic.php?f=21&t=14808&p=156654#p156654

            ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

            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

            438

            Online

            32.4k

            Benutzer

            81.5k

            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