Das Förderprojekt webinos zur Integration unterschiedlichster mobiler Geräte

Knotenpunkt in der digitalen Lebenswelt

28. September 2012, 9:55 Uhr | Simon Isenberg und Dr. Wolfgang Haberl
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 3

Das Personal-Zone-Konzept

Um den Austausch von Daten zu ermöglichen, setzt webinos auf das Konzept von Personal Zones (Bild 2). In einer Personal Zone werden die Geräte eines Benutzers zusammengefasst. Zentraler Punkt einer Personal Zone bildet der „Personal Zone Hub“ (PZH), der eine Art Vermittlungszentrale ist. Der PZH kennt die einzelnen Geräte eines Nutzers, weiß, welche Applikationen auf welchem Gerät installiert sind und welche Dienste bzw. APIs ein Gerät unterstützt. Über eine Web-Schnittstelle kann der Benutzer seine Personal Zone bzw. seinen Hub konfigurieren und festlegen, welche Applikation auf welche Dienste zugreifen darf. Außerdem kann für Applikationen, die auf einem Gerät ausgeführt werden, auch der entfernte Zugriff auf ein API eines weiteren Geräts in der Personal Zone erlaubt werden. Diese Privacy-Einstellungen werden in Policies gespeichert. Als Sprache für diese Sicherheitsrichtlinien wird die „eXtensible Access Control Markup Lan­guage“ (XACML) verwendet, die auf XML basiert.

Bild 2. Das Personal-Zone-Konzept in webinos.
Bild 2. Das Personal-Zone-Konzept in webinos.
© BMW

Auf jedem Konsumelektronik-Gerät ist ein „Personal Zone Proxy“ (PZP) installiert. Dieser fungiert als lokaler Stellvertreter des PZH. Informationen, welche Geräte und Dienste aktuell zur Verfügung stehen, erhält ein Hub von den zugehörigen PZPs. Wenn sich ein Gerät am PZH anmeldet, teilt der Proxy dem Hub mit, welche Dienste von dem Gerät unterstützt werden und welche Applikationen installiert sind. Der Hub aktualisiert daraufhin sein Service-Register und gibt die neuen Informationen an die Geräte bzw. Proxies der Zone weiter. Ein neu hinzugefügter PZP erhält vom Hub Informationen über die anderen vorhandenen Geräte und bekommt die aktuellen Privacy-Einstellungen für seine Applikationen mitgeteilt.
Über die webinos-Schnittstelle im Browser können Applikationen sowohl auf lokale als auch auf entfernte Gerätefunktionen zugreifen. Wenn ein Entwickler auf eine Gerätefunktion zugreifen möchte, kann er mittels der Service-Discovery des PZP eine Liste der für ihn relevanten Dienste abrufen und einen dieser Dienste einbinden (Listing 1). Der im PZP integrierte Policy-Manager entscheidet anhand der vorher erstellten Regeln, ob die Anfrage einer Applikation an den Dienst zugelassen oder blockiert werden muss. Ist die Anfrage an den Dienst zulässig, so wird die Anfrage an den API-Manager weitergeleitet. Dieser kann sich sowohl auf dem ausführenden als auch auf einem entfernten Gerät befinden. Handelt es sich dabei um einen entfernten Dienst, so wird die Anfrage über den PZH an den entfernten PZP und dessen API-Manager weitergeleitet.
Die beschriebenen Mechanismen sorgen dafür, dass zwischen einem Hub und einem Proxy Informationen zu Applikationen, Gerätefunktionen sowie Sicherheitsstellungen (Policies und Benutzerzertifikate) stets synchron gehalten werden. Darüber hinaus können Dienste-Anfragen von einem Gerät an das andere weitergeleitet werden, wenn ein Dienst auf dem ausführenden Gerät nicht zur Verfügung steht (Bild 3). So kann das Smart­phone beispielsweise auf das Vehicle API des Fahrzeugs zugreifen.

Bild 3. Synchronisierung und Messaging in webinos.
Bild 3. Synchronisierung und Messaging in webinos.
© BMW

Als Ausführungsplattform für Applikationen in webinos dient ein Web-Browser, wie z.B. Mozilla Firefox oder Google Chrome. Der Browser wird um eine Schnittstelle zum PZP erweitert. Die neue Schnittstelle führt konsequent den Trend fort, den Browser als Applikationsplattform einzusetzen. Durch die Verwendung des Browsers als Applikationsplattform wird die Applikationslogik in JavaScript implementiert. Für die GUI wird auf HTML und CSS zurückgegriffen. Neue Funktionen, die durch HTML 5 Einzug in den Browser halten, stehen Applikationen dank dessen Verwendung als Ausführungsumgebung in webinos automatisch zur Verfügung.
Die Applikationen werden mithilfe einer Manifest-Datei beschrieben. In diesem Manifest wird beispielsweise die Startadresse der Applikation definiert und angegeben, welche Dienste von der Applikation genutzt werden. Alle notwendigen Dateien einer Applikation werden in einem Paket, das als Widget bezeichnet wird, zusammengefasst. Für das Manifest und die Paketierung wird auf die Widget Specification des „World Wide Web Consortium“ (W3C)zurückgegriffen. Das W3C ist in seiner Rolle als Standardisierungsgremium für das Web ebenfalls ein wichtiger Projektpartner in webinos.
In der aktuellen Referenzimplementierung sind PZH und PZP in Node.js realisiert. Node.js ist ein Framework zur Entwicklung von Server-seitigen JavaScript-Anwendungen. Es basiert auf der JavaScript-Engine V8 von Google. So sind nicht nur die Applikationen in webinos mit Web-Technologie realisiert, sondern auch große Teile der webinos-Plattform selbst. Zugriffe auf Gerätefunktionen sind über native Node.js-Add-ons realisiert. Der PZP kann als eine Art lokaler Web-Server verstanden werden. Die Kommunikation zwischen PZH und PZP wird über Web-Sockets geregelt. Das auf TCP basierende Netzwerkprotokoll erlaubt den bidirektionalen Zugriff zwischen einer Web-Anwendung und einem Web-Server. Im Fall von webinos stellt der PZP die Web-Anwendung und der Hub den Web-Server dar. Web-Sockets werden ebenfalls in einem Atemzug mit HTML 5 erwähnt und sind ein Standard des W3C.


  1. Knotenpunkt in der digitalen Lebenswelt
  2. Auf dem Weg zu einheitlichen Standards
  3. Webinos Core
  4. Das Personal-Zone-Konzept
  5. Fahrzeugschnittstelle für Web-Applikationen
  6. Webinos präsentiert sich auf dem Mobile World Congress
  7. Die Autoren:

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu BMW AG