Erweitern Sie Ihre E-Commerce Lösung um Video-, Audio- und Datenkommunikation mit der Hilfe von WebRTC

Erstellt: 22.09.2015 von Roberto De Simone
Aktualisiert: 06.06.2017

Ohne dass Benutzer Softwarekomponenten auf ihren Geräten installieren müssen, können einer E-Commerce Lösung Video-, Audio- und Datenkommunikation hinzugefügt werden. WebRTC ist die Technologie, welche dies ermöglicht. Dieser Blog beschreibt einige Eindrücke, welche bei der Entwicklung eines WebRTC-Projektes gewonnen wurden.

Zwei Personen kommunizieren über Webcams. Der Service wird aus dem Browser heraus gestartet

Was ist WebRTC

Grundsätzlich ist WebRTC ein W3C-Standard für die Echtzeit-Video-, Audio- und Datenkommunikation, ohne Plugin zu werden. Benutzer von WebRTC-Webseiten (Web Apps) brauchen sich nicht für einen Service wie zum Beispiel Skype zu registrieren, wenn sie einen Video- oder Audio-Chat starten möchten. Die dazu notwendige Technologie ist bereits in modernen Browsern enthalten (siehe weiter unten für Browser Support). Der Benutzer kann mit einem einfachen Klick eine Kommunikation zwischen zwei Geräten über das Internet aufbauen (Peer to Peer).

Wo kann WebRTC Ihr Geschäftsmodell unterstützen

Es gibt viele Szenarien wo WebRTC helfen kann, einen Mehrwert für eine E-Commerce-Lösung zu schaffen. Shops können dem Benutzer die Möglichkeit bieten, über Video mit einem Verkaufsberater oder Support-Angestellten in Kontakt zu treten um Fragen zu dem Produkt zu stellen, welches er gerade ansieht. Verkaufsberater können Kunden in virtuellen Räumen treffen, um ihre Dienstleistungen zu präsentieren. Im Medtech-Bereich sind virtuelle Wartezimmer und Online-Konsultationen denkbar. Im Fintech-Bereich gibt es eine grosse Nachfrage nach Live-Beratung für Finanzprodukte. Wenn dann noch Screensharing der E-Commerce-Lösung hinzugefügt wird - was ebenfalls mit WebRTC ermöglicht werden kann -, wird die Interaktion mit einem Kunden auf eine neue Ebene gebracht.

Browser, welche WebRTC unterstützen

Zur Zeit unterstützen Chrome, Firefox und Opera den vollen WebRTC-Umfang. Microsoft Edge bietet erst eine beschränkte WebRTC-Unterstützung. Die grosse fehlende Komponente ist Apple mit Safari. Es scheinen aber Entwicklungen im Gange zu sein, um WebRTC in WebKit zu implementieren. Für MacOS kann Chrome oder Firefox verwendet werden. Für webbasierte iOS Anwendungen ist aber zur Zeit WebRTC Support nicht möglich. [Update 06.06.2017: Wie von Apple an der WWDC2017 angekündigt, wird Safari für iOS11 und macOS 10.13 WebRTC unterstützen.]

App-Entwicklung mit WebRTC-Unterstützung

Im Gegensatz zum fehlendem iOS Browser Support, welcher die Entwicklung von iOS Web Apps verhindert, ist es möglich, native iOS Apps zu entwickeln - es existiert ein SDK dazu. Ebenso ist ein SDK für die Entwicklung von nativen Android Apps verfügbar. Für Android Apps können ebenfalls WebRTC-Lösungen entwickelt werden, welche den auf Chrome basierenden Android WebView verwenden. Dies vereinfacht die App-Entwicklung.

Herausforderungen bei der Entwicklung von WebRTC-Lösungen

Theoretisch ist die Entwicklung von WebRTC-Lösungen einfach: Neben JavaScript-Knowhow benötigt man Kenntnisse einer Real Time Engine wie z.B. socket.io, um das Signaling zu implementieren. Im Signaling-Prozess wird mit Hilfe von STUN und TURN Servern versucht, die öffentlichen IP-Adressen derjeniger Geräte, zwischen welchen eine Kommunikation stattfinden soll, zu finden. Solange sich die potentiellen Benutzer nicht hinter einer Unternehmens-Firewall befinden, reicht in der Regel ein öffentlicher STUN Server aus, um eine Peer to Peer-Kommunikation aufzubauen. Leider ist die alleinige Verwendung eines STUN Servers nicht praxistauglich. Es wird ein TURN Server und tiefes Wissen über die unterliegenden Kommunikationsprotokolle verlangt. Lesen Sie hier über die verschiedenen Konzepte bezüglich des Aufbaus einer Peer to Peer-Kommunikation. Zusätzlich wird eine stetige Feinabstimmung benötigt, um auf Änderungen in neuen Browser-Versionen reagieren zu können.

Ohne fundierte Kenntnisse empfiehlt sich die Verwendung eines externen Service wie z.B. appear.in, tokbox oder twillo, um professionelle WebRTC-Anwendungen zu implementieren.

Schlussfolgerung

WebRTC ist eine Technologie, welche immer noch im Wandel ist. Wir werden in naher und mittlerer Zukunft zahlreiche Änderungen und Erweiterungen sehen. Nicht alle Problemstellungen sind gelöst, und die Browserhersteller müssen sich auf Standards einigen - unterschiedliche Codecs sind ebenfalls ein Problem. Für den Konsumentenmarkt oder den B2C (Business to Consumer) Markt - welcher vermutlich auch das grösste Marktpotential darstellt - betrachte ich den Einsatz von WebRTC bereits heute optimistisch.

Unter dem Strich ist WebRTC eine schöne Technologie, welche einen grossen Mehrwert für E-Commerce Lösungen bringt.