ioBrokerioBroker Blockly

Blockly – Farben

In dieser Artikelserie möchte ich das Thema Blockly in ioBroker näher erklären. In diesem Artikel zeige ich Dir verschiedene Blöcke rund um das Thema Farben.

1. Farbe manuell wählen

In diesem Kapital schauen wir uns den folgenden Block an:

Über den manuellen Farb-Block kann über einen Klick auf den Block die Farbe manuell ausgewählt werden.

Im Beispiel wird ein Trigger auf einen Test-Datenpunkt eingefügt. Der Datenpunkt stellt ein Tür- oder Fensterkontakt dar, der die beiden Werte (true und false) speichert. Wenn das Fenster geöffnet ist, wird im Datenpunkt „true“ zurückgegeben. Im Trigger wird der Wert nun mittels einem Falls-Block abgefragt und somit die Variable „colorValue“ bei „true“ auf Rot und bei „false“ auf Grün gesetzt. Zudem wird die Variable ColorValue in einem separaten Datenpunkt gespeichert und per Block „Debug Output“ in das ioBroker-Log geschrieben.

 

Im ioBroker-Log werden nun die folgenden Einträge geschrieben:

 

 

2. Zufällige Farbe

In diesem Kapital schauen wir uns den folgenden Block an:

Der Block liefert einen zufälligen Farbwert zurück.

 

Im folgenden Beispiel wird der selbe Trigger wie im ersten Kapital verwendet. Hierbei wird nach einer Änderung des Datenpunktes eine Schleife innerhalb des Triggers gestartet, welche 5 Durchläufe steuert. Innerhalb der Schleife wird die Variable „colorValue“ mit einem zufälligen Farbwert gefüllt und per Block „Debug Output“ in das ioBroker-Log geschrieben:

 

Im ioBroker-Log werden nun die folgenden Einträge geschrieben:

 

 

3. Farbe aus Rot, Grün, Blau (RGB)

In diesem Kapital schauen wir uns den folgenden Block an:

Mit dem Block kann eine Farbe per RGB-Wert ermittelt werden.

In diesem Beispiel wird wieder die Grundsteuerung aus dem ersten Kapital verwendet (Tür- und Fensterkontakt). Hierbei wird die Farbe nicht über die manuelle Farbwahl, sondern über den Farb RGB-Block ermittelt. Im Beispiel werden so die Farben Rot und Grün als Farbwert ermittelt und in den entsprechenden Datenpunkt geschrieben.

 

 

 

4. Farben mischen

In diesem Kapital schauen wir uns den folgenden Block an:

Der Block „Mische Farben“ kann zwei Farbwerte mit einem hinterlegten Mischungsverhältnis mischen und als Farbwert zurückgeben. In meinen Versuchen hat das Mischen von Farben allerdings nicht funktioniert. Ich werde hier nochmals recherchieren und dann den Artikel ergänzen.

 

Ich hoffe Dir gefällt der Artikel. Ich freue mich über Deinen Kommentar oder Fragen zum Thema 🙂

Matthias Korte

Hauptberuflich Software-Entwickler und seit einigen Jahren Smart-Home Fan. Angefangen hat alles mit einem RaspberryMatic und einer schaltbaren Steckdose. Mittlerweile habe ich einige Steckdosen, Sensoren, und Thermostate sowie ioBroker zur Visualisierung im Einsatz.

6 Gedanken zu „Blockly – Farben

  • Claus Hacker

    Hallo,
    ich würde gerne die Schriftfarbe von einen „hqwidgets on/off“ mit Blockly ändern.
    Gibt es da eine Möglichkeit?
    Gruss

    Antwort
    • Matthias Korte

      Moin Claus,

      ja, das sollte über CSS funktionieren.

      Hier mal ein Beispiel wie bei mir die Farbe eines Widgets ändere.


      {h:0_userdata.0.Visualisierung.Status.Lights.CountOn;h == 0 ? "#33cc33" :"#FF0000"}

      Über diesen Weg kannst du dann natürlich auch die Schriftfarbe des Widgets ändern.
      Ich freue mich auf Deine Rückmeldung, bei Fragen gerne melden 🙂

      LG Matthias

      Antwort
  • Claus Hacker

    Hallo vielen Dank für deine Antwort.
    Leider bin ich ein totaler Anfänger und habe mit CSS noch nichts gemacht.
    Wenn es Dir nicht zu viel Mühe macht könntest Du mir vielleicht helfen.
    1. ich habe einen Datenpunkt „Farbe“, in dem ich den Farbcode schreibe.
    2. dieser Datenpunkt soll dann den Wert der Schriftfarbe überschreiben.
    3. das widgets ist W00035 (hqwidgets – on/off)
    Kannst du mir den den Code für ccs übermitteln?
    Muss ich den Code dann nur bei dem widgets im css -reiter eingeben?
    Wie wird der code aktiviert?
    Vielen Dank für Deinen Bemühungen.
    Grtuss
    Claus

    Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.