Smart Home Lösungen mit SAP Fiori – Interview mit meinem Kollegen

Ich weiß ja, dass es kaum Probleme in SAP Fiori oder in Bezug auf mobile Lösungen gibt, welche meine Kollegen nicht lösen können. Mit Freude stellen sie sich immer wieder neuen Herausforderungen und arbeiten gerne an neuen Themen, um technisch einwandfreie Lösungen zu entwickeln. In Gesprächen mit unseren Kunden stellen wir immer wieder fest - was für uns so einfach aussieht - ist offenbar doch eine sehr spezielle Expertise, über die meine Kollegen verfügen.

„Technik die begeistert“, das kann man auch bei unseren Kunden erkennen, wenn sie mal wieder von neuen Ideen und Lösungen angesteckt wurden. Manchmal gilt das aber auch für die Schnelligkeit, mit der SAP Fiori Apps umgesetzt werden können. 

Auch ich bin manchmal überrascht, welche Lösungen mit SAP Fiori umsetzbar sind. Denn was sollte ein Kollege in seiner Freizeit Besseres machen als seine Privatwohnung „mal eben“ mit einer SAP Fiori App zu steuern. Und so geht bei Dieter jetzt das Licht an und aus durch eine eigens entwickelten Fiori App mit Hilfe der SAP Web IDE!  

Sie möchten auch wissen wie das funktioniert, dann jetzt hier zum Interview mit Dieter:

Dieter, warum hast Du diese App entwickelt?

An einem Abend hatte ich mich über Bluetooth 5.0 und über Bluetooth Beacons informiert. Oft wurden in Foren Apps genannt, die man installieren könnte. Allerdings wollte ich mich tiefer einarbeiten und herausfinden, wie die Kommunikation mit einem Bluetooth-Gerät stattfindet. Auf der Suche nach dem schnellsten Weg die Kommunikation mit einem Bluetooth-Gerät zu realisieren, war es die Idee eine Open-UI5 statt einer Android-App zu entwickeln (da wir täglich Fiori-Apps entwickeln). Daher schaute ich zuerst auf der Webseite https://whatwebcando.today/ nach, was man mit einem mobilen Browser überhaupt machen kann. Bei Bluetooth war ein grüner Haken und man konnte auch direkt den Beispielcode zum Verwenden der Web Bluetooth API einsehen. Zwar habe ich mir an diesem Abend direkt einen Bluetooth Beacon bestellt, allerdings war ich zu neugierig und wollte es direkt ausprobieren. Dann fiel mir unsere Bluetooth-Lampe ein, die über eine App des Herstellers gesteuert werden kann. Diese ist bei uns an einer WLAN-Steckdose angeschlossen, die wir über Alexa steuern. Dies ermöglicht uns die Standardfunktionalität „Licht an / Licht aus“ zu nutzen. Bei der App des Herstellers hatte ich jedoch hinsichtlich des Datenschutzes einige Bedenken (was ich aus den Rezensionen der App ableiten konnte). 

Was waren die Herausforderungen?

Schnell merkte ich, dass es nicht leicht wird die Lampe zu steuern, da es vom Hersteller leider keine Dokumentation gibt. Im Gegensatz zu der gewohnten Entwicklung mit OData Services und anderen APIs, bei denen dokumentiert ist, welche Werte man mitsenden kann, war dies bei der Lampe also noch ein Rätsel. Erst über die Bluetooth Debugging App konnte ich zwar sehen, welche GATT-Merkmale (Services) die Lampe hat, aber nicht welche Werte diese annehmen kann. Wie bereits erwähnt gibt es bereits eine Standard App (Magic Blue), mit der man die Lampe steuern kann (Farbe der Lampe, An/Aus, Dimmen, verschiedene Lichteffekte). Also dachte ich mir, dass die relevanten Werte über diese App ermittelbar sind. Ich aktivierte also das Debugging der Bluetooth Verbindung meines Android Smartphones und schnitt die Bluetooth Kommunikation zwischen der App und der Lampe mit. Anschließend suchte ich nach relevanten GATT-Merkmalen und analysierte die Werte die mitgeschickt wurden. Nachdem ich das Muster erkannt hatte, konnte ich direkt das Einstellen der Farbe über die Web Bluetooth API testen und es funktionierte. Komplizierter wurde es bei der Realisierung des Live-Farbwechsels über den Color Picker, da die Lampe während der Verarbeitung des letzten Befehls keinen neuen Befehl verarbeiten kann. Also passte ich die Verarbeitung der Farbwechsel-Events an die Rückmeldungen der Lampe an, sodass ein Farbwechsel ohne wahrnehmbare Verzögerung erfolgen konnte. Als deutlich komplizierter stellte sich jedoch das Lesen der aktuellen Farbe beim Starten der App heraus. Wenn man die App startet, will man als Nutzer ja sehen, welche Farbe aktuell aktiv ist. Der Hersteller hat die Leseoperation für diese Eigenschaft nicht aktiviert und stattdessen einen komplizierten Workaround gebaut, was aus mehreren Requests besteht. Mir war bewusst, dass ich die Funktionalität für den Farbwechsel nie nutzte, jedoch sah ich Komplexität als eine Herausforderung und konnte somit am Ende das Lesen der aktuellen Farbe realisieren. 

Wie kann man sich die App am Smartphone oder Tablet vorstellen, kannst du uns dein Ergebnis zeigen?

Der Screenshot zeigt, welche Funktionen die App hat und wie man sie bedienen kann.  Im Fokus stand - wie bei unseren Business-Apps auch - die intuitive Bedienung und gute User Experience. Ziel ist es ja meistens, Prozesse und Abläufe zu optimieren, das ist natürlich auch für Zuhause toll. 

Hier noch mal die Funktionen im Überblick:

  • Licht an / aus
  • Color Picker zum Einstellen der Farbe / Dimmen dieser Farbe
  • Slider zum Dimmen des warmen Lichts
  • Aktionsfeedback durch Vibration

 

Dieter, vielen Dank für den Einblick in das Thema Smart Home und die Umsetzung deiner App zur Licht-Steuerung im privaten Wohnraum.

 

Interessiert mehr zu erfahren?
Das und noch mehr Expertise rund um die Technologie von SAP Fiori hier bei mir!

Dieter Etscho
d.etscho@advades.com

Damaris Aurand
d.aurand@advades.com