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. Visualisierung
  4. Zugriff auf javascript.0.Variablen aus Vis View Script heraus

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.6k

Zugriff auf javascript.0.Variablen aus Vis View Script heraus

Geplant Angeheftet Gesperrt Verschoben Visualisierung
7 Beiträge 3 Kommentatoren 3.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.
  • M Offline
    M Offline
    manne01
    schrieb am zuletzt editiert von
    #1

    Hi,

    ich setze mit einem Javascript Script eine Variable abhängig von einem Bewegungsmelder-Zustand.

    Nun möchte ich in meiner View (also am Anzeigeclient) die Helligeit regeln mit

    document.getElementById("visview_start").style.filter = "brightness(100%)";
    ````, aber eben in Abhängigkeit von der Variable des Servers.
    
    Doch wie greife ich darauf aus einem Script in einer Vis View zu? getState ist dort nicht definiert… on() auch nicht... das muss doch gehen? kann man einen eventlistener bauen o.ä.?
    
    Irgendwie blicke ich es nicht!
    
    Beste Grüße
    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      pix
      schrieb am zuletzt editiert von
      #2

      Hallo ,

      das geht mit Vis 'bindings'. Suche mal danach, auch in der Vis Doku auf Github.

      {javascript.0.datenpunkt}
      

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

        Hi Pix,

        Danke für den Tipp, das kannte ich in der Tat noch nicht. Kann ich diese Bindings nur in Attribut-Werte der Widgets eintragen (klappt hervorragend) oder kann ich diese auch im Script verwenden? Im Script ist es mir zumindest noch nicht gelungen.

        Dazu kommt ja noch, dass ich gerne innerhalb Vis (also auf dem Client) in einem Script auf Änderungen an einem solchen Wert reagieren möchte?! D.h. Sobald der Wert z.B. auf True springt möchte ich etwas JavaScript ausführen lassen.

        Ein Scheduler der das permanent prüft kommt mir dazu nicht richtig vor. Außerdem soll es möglichst Verzögerungsfrei laufen.

        Die Widgets reagieren ja auch alle "live" auf Veränderungen der Werte. Solch eine Reaktion muss doch also auch in einem Script möglich sein?!

        Kannst Du mir nochmal weiterhelfen?

        1 Antwort Letzte Antwort
        0
        • M Offline
          M Offline
          manne01
          schrieb am zuletzt editiert von
          #4

          Oder natürlich auch jemand anderes der mir hierzu Rat geben kann!

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

            Hallo,

            ich weiß jetzt nicht, welches Problem du lösen willst, welche Anwendung du vorhast.

            Eigentlich wird die Logik nicht auf der Client Seite ausgeführt. Solche Lösungen (Wenn Dann) machen die Adapter (zB Javascript, Scenes, etc…).

            In Vis gibt es aber die Möglichkeit, jedes Einstellungsfenster für Widgets mit Bindings zu füllen. Somit sind kleinere Logiken möglich.

            Zum Beispiel kann man die Farbe abhängig vom Wert ändern.````
            {wert:adaptername.instanznummer.objekt;(wert>0) ? "red" : "green"}

            
            Zuviele dieser Bindings belasten aber den Client. Deshalb sollte das lieber im Server oder mit einem passenden Widget gelöst werden.
            
            Es gibt dann noch Skripte für VIS, die zB Views umschalten, wenn eine bestimmte Zeit keine Eingabe erfolgte:
            
            [http://forum.iobroker.net/viewtopic.php … 493#p22052](http://forum.iobroker.net/viewtopic.php?f=29&t=2493#p22052)
            
            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
            • M Offline
              M Offline
              manne01
              schrieb am zuletzt editiert von
              #6

              Hallo Pix,

              ich möchte einfach die Helligkeit des Screens nachts (zw. 23 und 8 Uhr) reduzieren. Wenn ich im "dunklen" Modus den View berühre (Click Event), wird auch sofort hell. Soweit funktioniert das schon mit der lokalen Logik im VIS View Script Reiter.

              Nun habe ich aber noch einen Bewegungsmelder im Flur. Sobald dieser Bewegung meldet, soll der Screen unmittelbar normal hell werden, d.h. ich muss den Bewegungs-Zustand im VIS-Script verwenden.

              Am Ende läut es wohl auf einen Timer hinaus, der z.B. jede Sekunde auf Bewegung prüft. Nur wie greife ich auf die Variable überhaupt zu? Mir fällt nur ein Umweg ein: Das Bewegungsmelder-Objekt würde ich zB in einem Widget als Sichtbarkeits-Kriterium einstellen und z.B. auf die …getElementsById.visibility o.ä. genau dieses Widgets prüfen.

              Aber gibts da nicht noch was saubereres, direktes? Die Widgets können es doch alle auch!:)

              VG

              Manfred

              1 Antwort Letzte Antwort
              0
              • M Offline
                M Offline
                Marc_St
                schrieb am zuletzt editiert von
                #7

                @manne01:

                Aber gibts da nicht noch was saubereres, direktes? Die Widgets können es doch alle auch!:) `

                An dem Punkt beiße ich mir gerade aus die Zähne aus. Ich würde meine Visualisierung (maßgeblich SVGs in VIS) gerne per Javascript animieren und kolorieren, muss dabei aber in Javascript auswerten können, wie eine Temperatur ist, bzw. ob eine Pumpe läuft usw. Ich verstehe einfach nicht, wie ich das in VIS in Javascript machen kann. Ein Widget kann ja auch die Daten auslesen / verarbeiten …

                Danke!

                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

                619

                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