Open Source im professionellen Einsatz
Linux-Magazin 08/2013
215

Empfangen und senden

Empfängt der Browser über die Websocket-Verbindung hingegen eine Nachricht von außen, so tritt die Rückruffunktion aus den Zeilen 16 bis 34 von Listing 10 in Aktion. Sie verwandelt zunächst die eingehende Json-Nachricht in ein Javascript-Objekt, das die anschließende Switch-Anweisung je nach dem Nachrichtentyp verarbeitet.

Listing 13 zeigt die Funktion »send()« . Diese nutzt in Zeile 2 die gleichnamige Methode des Websocket-Objekts, um eine Nachricht zu verschicken. Zuvor wandelt »stringify()« sie in eine Zeichenkette im Json-Format um.

Datenkanal

Mittels Web RTC lassen sich nicht nur Medienströme übertragen. Die Funktion »data()« in Listing 14 erzeugt einen Data-Channel zur Übertragung von Textnachrichten, der wie ein Websocket funktioniert. Zeile 3 öffnet mit der Methode »createDataChannel()« einen Kanal für die bestehende Peer-to-Peer-Verbindung im Peer-Objekt »pc« . Das Ereignis »ondatachannel« in Zeile 5 tritt beim Öffnen eines Datenkanals ein. Die Funktion »config()« ab Zeile 11 definiert die Rückruffunktion, die beim Eintreffen einer Textnachricht aktiv wird. Die Methode »send()« in Zeile 14 versendet Nachrichten über die bestehende Verbindung.

Listing 14

Data-Channel

01 function data(pc, opener) {
02   if (opener) {
03     config(pc.createDataChannel("work"));
04   } else {
05     pc.ondatachannel = function(evt) {
06       config(evt.channel);
07     }
08   }
09 }
10
11 function config(channel) {
12   channel.onmessage = function(evt) {
13     console.log(evt.data);
14     channel.send("recived message");
15   }
16 }

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 6 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • ECMA-Script 6

    Der kommende Sprachstandard ECMA-Script 6 beseitigt viele historische Javascript-Eigenheiten. Die bisher vermissten Klassen, Module und Default-Parameter erleichtern das Coden vor allem den Umsteigern von anderen Programmiersprachen.

  • Signal erlaubt verschlüsselte Videochats

    Der verschlüsselnde Messenger Signal bietet nun für Android und I-OS offiziell Ende-zu-Ende-verschlüsselte Videotelefonate an. Das Feature hat die Betaphase beendet, zugleich versprechen die Signal-Macher eine bessere Qualität für Sprachanrufe.

  • HTML-5-DRM

    Im Rahmen von HTML 5 erhalten Webbrowser die Fähigkeit, Inhalte zu verschlüsseln. Das Sicherheitsfeature hat sich nun zum Politikum entwickelt, denn die Anbieter von digitalen Inhalten möchten es für Digital Rights Management (DRM) verwenden. Hier ein freier Blick auf die Technik.

  • React

    Vom Unternehmen Facebook kommt das quelloffene Javascript-Framework React, das Weboberflächen geschickt mit Datenschätzen verknüpft. Insbesondere die Renderfunktion macht sich dabei nützlich.

  • Meteor

    Javascript sowohl im Browser als auch auf dem Server: Das Webframework Meteor verspricht Anwendungen aus einem Guss, die sich dank vieler fertiger Pakete rasch programmieren lassen.

comments powered by Disqus

Ausgabe 10/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.