Eigenes Logging in ioBroker – Teil 2 – Nutzung in Blockly

In diesem Artikel zeige ich Dir, wie Du die erstelle Logging-Funktion auch innerhalb von Blockly verwenden kannst.

Ich hatte vor einigen Wochen einen Artikel zum Thema „Eigenes Logging in ioBroker“ veröffentlicht. Falls Du den Artikel noch nicht gelesen hast, hier findest Du den Artikel:

Zu diesem Artikel habe ich einige Fragen erhalten, z.B. auch wie das Logging in Blockly eingesetzt werden könnte.

Im Artikel zeige ich Dir jetzt, wie Du die erstellte JavaScript Funktion einfach in Blockly als Funktions-Block einfügst und dann direkt verwenden kannst.

Im ersten Schritt öffnen wir nun den Bereich Scripte und erstellen ein neues Blockly-Script. Für den Artikel werde ich ein Beispiel Blockly-Script anlegen, mit dem das Öffnen und Schließen unserer Terrassentür im Log dokumentiert wird.

Im ersten Schritt fügen wir dazu nun im Bereich Funktionen den Block „Javascript-Funktion etwas tun“ ein.

Über die Konfiguration des Blocks habe ich nun den Name auf CreateLogEntryFromBlockly gesetzt. Zudem habe ich zwei Parametr hinzugefügt, mit denen der Type (t) sowie die Log-Nachricht (c) übergeben wird.

Mit einem Klick auf die Code-Definition rechts am Block können wir nun im nächsten Schritt den JavaScript-Code des Blocks definieren:

Im Editor rufen wir hier nun unsere globale JavaScript-Funktion createEventLog mit den beiden Übergabeparametern t und c auf. Somit haben wir die Schnittstelle zwischen Blockly und JavaScript hergestellt, und können jetzt in unseren Blockly-Scripten das Logging nutzen.

Hinweis:
Diese Funktion muss in jedem Blockly-Script eingefügt werden, welches das Logging einsetzen möchte.

In unserem Blockly-Script gehen wir nun wie folgt vor. Im Trigger auf den Datenpunkt STATE der Terrassentür fragen wir nun den neuen Wert des Datenpunkts ab und können dann mittels dem CreateLogEntryFromBlockly-Aufruf den Eintrag im Log erstellen.

Ich hoffe ich konnte Dir mit dieser Ergänzung des Logging-Artikels zeigen, wie Du die Funktion nun auch in Blockly verwenden kannst. Über Kommentare, Fragen oder Anregungen freue ich mich.

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.