Gibt es eine Open-Source-WebSockets (JavaScript) XMPP-Bibliothek? [geschlossen]

StackOverflow https://stackoverflow.com/questions/1850162

  •  13-09-2019
  •  | 
  •  

Frage

Hat jemand eine Open-Source-XMPP-Bibliothek geschrieben, die WebSockets und wird verwendet, bedeutet von einem Browser ausgeführt werden?

War es hilfreich?

Lösung

Wir haben noch nicht einen Standard für XMPP über WebSockets , dass die Server implementieren kann, die vor der Client-Seite erforderlich sein werden, kann angemessen in Angriff genommen werden.

Der erste Schritt ist WebSocket Standardisierung zu beenden. Es sieht aus wie dies in einer IETF-Arbeitsgruppe Hybi passieren kann, die zum Zeitpunkt des Schreibens noch nicht von der IESG genehmigt. Es war vor einer Hybi Birds-of-a-Feather (BoF) an der Hiroshima IETF-Meeting ein paar Wochen (siehe Treffen Materialien ), was ziemlich gut ging.

Nach WebSockets hat eine stabile Referenz scheint und sesshaft zu werden, die XSF wird erstellen XEP , die XMPP zu WebSockets bindet, vermutlich mit einer Strophe pro WebSocket Rahmen.

Edit: Jack Moffitt ein IETF Internet-Draft mit einem ersten Durchgang bei einem Protokoll, das verwendet werden kann. ACHTUNG: . Dies ist immer noch wahrscheinlich drastisch ändern. Nur es implementieren, wenn Sie bereit sind, es später ganz auszureißen. ACHTUNG: .

Andere Tipps

Es gibt mehrere Lösungen (keiner von ihnen ist perfekt)

1. Verwenden Sie Kaazing.

Sie unterstützen es bereits. Es ist Open Source, aber sie haben eine Art von Dual Lizenz , so besser überprüfen, ob Sie für Ihr Projekt verwenden können oder nicht.

2. Kombinieren Sie js.io und APE (Ajax Push-Maschine)

APE ist ein Comet Rahmen, aber sie begannen vor kurzem Websockets unterstützen. Auf ihrer Website ( „APE als Proxy“ Abschnitt), sagen sie es können js.io Bibliotheken laufen die xmpp.js umfasst, so die Kombination von ihnen arbeiten kann.

3. Verwenden Sie Caucho

Es ist ein Java-basiertes Framework ähnlich wie APE, die One-Stop-Shop Comet-Lösung bietet, und sie scheinen beide XMPP und WebSockets

zu unterstützen

4. Stellen Sie Strophe Team WebSocket zu unterstützen.

Strophe tut XMPP über BOSH (Bidirektionale Ströme über synchrone HTTP), aber es ist eine Diskussion über die Unterstützung WebSockets auch.

Jack Moffitt (der Kern-Entwickler und der Autor des Buches oben erwähnt) scheint in WebSockets interessiert, aber wir brauchen mehr starke Argumentation darüber geben, warum brauchen sie WebSocket über BOSH zu unterstützen. Wenn Sie gute Antworten haben, nehmen Sie bitte die Lauffläche.

Ich habe gerade versucht, ihre xmpp, quatsch, strophe echobot Beispiel , die gut gearbeitet. Vielleicht haben Sie es auch versuchen wollen, um zu sehen, ob es Ihren Anforderungen entspricht oder nicht.

# 2 und # 3, wie sie sagen, dass sie beide Unterstützung xmpp und WebSockets, aber nicht sicher, ob sie zusammenarbeiten.

Welche Art von Anwendung, die Sie über die Verwendung von XMPP & WebSockets für denken?

Die folgenden sind Vorschläge für Alternativen.

  • Wenn Sie die Präsenz wollen, Chat, Chat-Raum gleichwertige Funktionalität, können Sie Wave-Gadget oder Roboter machen, setzen dann nach außen mit Wave-Embed API (toter Link, gehalten für historische Zwecke). Welle ist eigentlich oben auf XMPP gebaut.
  • Wenn Sie einfach nur für eine sehr geringe Latenz-Messaging-Fähigkeit suchen, könnten Sie versuchen AMQP .
  • Wenn Sie nach vielen einfachen Nachricht Streaming suchen, können Sie einfach Rohr in / out Unix-Datei, wie ich hier unter Beweis gestellt.

Ich habe die meisten Informationen über, als ich schrieb diese Blog-Post . Wenn Sie den Kommentarbereich Zeit zu Zeit überprüfen, ich werde Update veröffentlichen, sobald ich andere Lösungen zu finden.

Es ist ein Buch, in Kürze, dass deckt dieses Thema ...

Professionelle XMPP mit JavaScript und jQuery alt text http://ecx.images-amazon.com/images/ I / 51B7VAHw8OL._SL500_AA240_.jpg

Aber ich nehme an, Sie wollen nicht für das Buch warten. So sehen der Präsentation des Jack Moffitt von JSConf . Ich sah es an diesem Morgen. (Jack Moffitt ist der Autor des Buchs oben verlinkten.)

Die Bibliothek beteiligt (JavaScript und C-Implementierungen) ist Strophe .

Dies ist ein sehr fruchtbares Gebiet der Exploration, aber sehr roh. Wir werden bald mehr sehen. WebSockets kommt mit HTML5, ist das richtig?

JSJaC Arbeitsgeräte XMPP über Websockets . Es ist bekannt, mit mehreren Back-End-Implementierungen arbeiten:

  • node-xmpp-bosh - unterstützt RFC6455 und arbeitet seit 0.6.1 ohne Probleme, ist es auch transparent verwendet STARTTLS ggf.
  • WXG - unterstützt RFC6455 und Werke ohne Probleme, aber kann keine Verbindung zu Server erforderlich STARTTLS (original WXG hat einige Fragen, die von Gordin behoben wurden).
  • ejabberd-WebSockets - nicht Unterstützung RFC6455 daher ist es nicht funktioniert, ist es die Anpassung zu unterstützen RFC6455 sollte für jedermann zu wissen, Erlang (etwas Arbeit ganz einfach sein in Fortschritte auf Github)
  • finden
  • Openfire - inoffizielle Plugin ist vorhanden, aber es fehlt Unterstützung für RFC6455 daher ist es nicht funktioniert
  • Apache Vysper - tut unterstützen nicht RFC6455 daher nicht funktioniert
  • Tigase - keine bekannten Arbeiten an WebSocket Unterstützung
  • MongooseIM - eine Gabel von ejabberd mit Unterstützung für XMPP über Websockets.

Ich bin nicht sicher, JS auf Browser-Seite websocket Protokoll allein bewältigen kann, wie es vor allem auf Browser-API verlassen. Nur wenige Browser-Unterstützung WebSocket noch: Chrom, Safari5, vielleicht Firefox4. Es gibt viele Abhilfen auf Basis von Flash / AS3 (dann js steht in Verbindung mit Flash-Code) die die wichtigste Einschränkung ist, dass Flash nicht sichere Verbindung unterstützt (so schlecht).

BWT, können Sie dieser websocket implem sie Open-Source-Java-Client websocket lib bieten und scheint mit xmpp Sachen zu tun, und wenn Sie die Repositories durchsuchen können Sie grundlegende aS3 websocket Implementierung finden.

Ich bin nicht sicher, warum Sie speziell für eine WebSocket Lösung fordern, weil der XMPP-Server dieses ersten unterstützen müßte.

Es gibt jedoch mehr XMPP JavaScript-Bibliotheken zur Verfügung (soweit ich sehe, dass sie alles BOSH Methode):

wurden genommen Diese Beispiele aus dem XMPP Webseite , die Open-Source-Implementierungen des XMPP-Protokoll listet .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top