ioBrokerioBroker Blockly

Blockly – Beispiel – Zahl in Klartext konvertieren

In dieser Artikelserie möchte ich das Thema Blockly in ioBroker näher erklären. In diesem Beispiele zeige ich, wie man einen Wert eines Datenpunkts in einen Klartext umwandeln kann.

Datenpunkte speichern Werte in der Regel nicht im Klartext, sondern in Form von numerischen oder alphanumerischen Kürzeln. Für den Status einer Heizungssteuerung standen zum Beispiel folgende Werte zur Verfügung:

  • 0 = Standby
  • 1 = Automatikbetrieb
  • 2 = Heizbetrieb

In einem Trigger auf den Datenpunkt möchte ich mir nun bei einer Wertänderung den aktuellen Wert des Datenpunktes per E-Mail zusenden lassen. Ich möchte hier aber nicht den numerischen Wert (0,1,2,3…) sondern direkt den aufgelösten Wert im Klartext versenden. Mit dem folgenden Blockly-Script habe ich das Problem wie folgt gelöst:

Im Script erstelle ich im ersten Schritt einen Trigger auf den entsprechenden Datenpunkt. Bei einer Veränderung des Datenpunktes führt der Trigger nun die Blöcke im Body aus. Im ersten Schritt wird dazu eine Variable „StatusText“ erstellt und mit dem Wert „“ initialisiert. Nun folgenden die einzelnen Abfragen auf die entsprechenden Werte. Ich vergleiche hier jeweils in einem Falls-Block mit einem Logik-Block den Wert des Triggers mit den entsprechenden numerischen Werten des Status. Wenn der Wert des Triggers 0 entspricht wird die Variable „StatusText“ auf „Standby“ gesetzt. Mit den restlichen Werten wird genauso verfahren. Im Anschluss an die Falls-Blöcke wird nun die Variable „StatusText“ mit dem E-Mail-Block versendet. Anhand diesem Beispiel siehst Du nun, wie einfach Du numerische Werte in den jeweiligen Klartext umwandeln kannst.

Weitere Artikel zum Thema:

Blockly E-Mails versenden

 

Anbei das oben gezeigte Blockly-Script auch Download, welches direkt im Script importiert werden kann:

Blockly – Beispielscript – Zahl in Klartext (518 Downloads)

 

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.

Ein Gedanke zu „Blockly – Beispiel – Zahl in Klartext konvertieren

  • Hallo Matthias, ich wollt deinen Artikel als Vorlage für mein Skript nutzen. Ich möchte im Habpanel (iobroker) gerne die verschiedenen Stadien meines Rasenmähers als Text anzeigen lasen , nicht als Zahlenwert. Leider weiß ich nicht, welches Widget dafür in Frage kommt. Bisher bekomme ich die Anzeige nur als Zahl. Im datenpunkt sind aber die Texte für die Zahlen hinterlegt bspw. Zahl 1 = Home. Hast du einen Tipp für mich? Danke . Rico

    Antwort

Schreibe einen Kommentar zu Rico Antworten abbrechen

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