Blockly – Konvertierungen

In dieser Artikelserie möchte ich das Thema Blockly in ioBroker näher erklären. Im Artikel werden wir uns anhand von Beispielen die Konvertierungs-Blöcke genauer ansehen.

1. Konvertierung nach Zahl

Im ersten kleinen Beispiel sehen wir uns nun die Konvertierung nach Zahl an. Im Beispiel habe ich einen Trigger auf einen Datentyp vom Typ String erstellt, welchen den neuen Wert nach der Änderung in eine Zahl umwandelt und diesen dann in den numerischen Datenpunkt TestValue schreibt. Der Block verwendet hier intern die parseFloat() JavaScript-Funktion.

2. Konvertierung nach Logikwert

Im zweiten Beispiel erstellen wir uns einen Trigger auf einen numerischen Wert (0 oder 1), welcher uns dann über den Block nach Logikwert den Wert in einen logischen Wert umwandelt. Der numerische Wert 1 entspricht hier true, die 0 false.

3. Konvertierung nach String

Im nächsten Beispiel erstellen wir wieder einen einfachen Trigger, mit dem wir einen numerischen Wert in einen String umwandeln.

Im zweiten Beispiel wandeln wir einen logischen (true/false) Wert in einen String um. Hier wird der logische Wert identisch in den String Datenpunkt geschrieben.

4. Typ von Block

Mit diesem Block wird der Typ eines Datenpunkts als String zurückgegeben. Im folgenden Beispiel habe ich einen Trigger erstellt, welcher auf einen logischen (boolean) Datenpunkt reagiert. Als Zeichenfolge erhalte ich somit boolean.

Folgende Werte werden für die verschiedenen Datenpunkt Typen zurückgegeben:

  • Logikwert – boolean
  • Zeichenkette – string
  • Zahl – number
  • Feld – array
  • Objekt – object
  • Gemischt – mixed

5. Konvertierung nach Datum/Zeit

Im fünften Beispiel zeige ich Dir die Konvertierung nach Datum/Zeit. Mit diesem Block kannst Du einen numerischen oder alphanumerischen Wert in ein Datums-Objekt konvertiere. Im folgenden Beispiel konvertieren wir das Beginn-Feld der Wetterwarnungen des Deutschen Wetterdienstes um diesen Wert in folgende Form zu konvertieren TT.MM.JJJJ SS:mm“.

Im ersten Schritt habe ich dazu den Wert vom Datenpunkt dwd.0.warning.begin über den Konvertierungsblock in die Variable beginn geschrieben. Den Wert habe ich dann über den Konvertierung nach Datum/Zeit Block in einen weiteren Datenpunkt geschrieben.

6. Konvertierung Datum/Zeit nach…

Im nächsten Beispiel verwende ich den Trigger auf den Datenpunkt Sensor.Bodenfeuchtigkeit. Bei einer Veränderung des Datenpunkts wird der Zeitstempel der Änderung über den Block Datum/Zeit im Anwenderformat in das ioBroker Log geschrieben. Das Format kann hierbei frei gewählt oder eingegeben werden.

Grundlagen Trigger System-Blöcke Zeichenfolgen   Datum und Uhrzeit Konvertierungen Farben   Listen   Schleifen   Timeout   Mathematik   Kommunikation   Hue / Yeelight Leuchtmittel steuern   Beispiele  

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.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.