Was ist Web-PubSub-Chat?

Web PubSub Chat ist eine verwaltete Chat-Funktion, die auf Azure Web PubSub basiert und mit minimalem Setup und serverseitigem Code Echtzeit-Chat zu Ihren Anwendungen hinzufügen kann.

Es stellt speziell entwickelte Client- und Server-APIs für Chat-Szenarien bereit. Anstatt benutzerdefinierte Events und Nachrichtennutzlasten zu entwerfen, arbeitet man mit Chat-nativen Konzepten wie Räumen, Nachrichten und Mitgliedern.

Der Web PubSub-Chat basiert auf der Kern-Echtzeit-Messaging-Infrastruktur von Web PubSub, sodass Sie sich auf den Aufbau von Chat-Erlebnissen konzentrieren können, anstatt selbst Protokolle zu verdrahten, Nachrichtenpersistenz und Fan-Out-Logik zu erstellen.

Web-PubSub-Chat-Unterstützung:

  • Eins-zu-eins und Gruppenchat
  • Verwaltete Nachrichtenzustellung und Bestellung
  • Chatroom-basierte Nachrichtenhistorie
  • Hochskalierbare Echtzeit-Messaging, unterstützt vom Azure Web PubSub-Dienst

Obwohl Web PubSub Chat ein eigenständiges Angebot ist, übernimmt es die grundlegenden Funktionen von Web PubSub, darunter:

  • Autoskalierung
  • Geo-replication
  • Sicherheit und Compliance auf Unternehmensniveau

Warum Web-PubSub-Chat?

Chat ist zu einem zentralen Interaktionsmodell für moderne Anwendungen geworden. Beispielsweise bieten Banken ihren Kunden einen In-App-Chat an, um während des gesamten Lebenszyklus des Kunden schnellen Support zu bieten.

Allerdings erfordert der Aufbau eines produktionsbereiten Chatsystems typischerweise das Zusammenführen mehrerer Anliegen:

  • Echtzeit-Transport
  • Auffächern und Sortieren von Nachrichten
  • Verwaltung des Verbindungslebenszyklus
  • Nachrichtenpersistenz
  • Client-SDKs plattformübergreifend

Die direkte Verwaltung dieser Komponenten erhöht die Komplexität und verlängert die Zeit bis zur Wertschöpfung.

Was Chat dir stattdessen gibt

Web PubSub-Chat bietet eine chatspezifische Abstraktion basierend auf Web PubSub, die diese Aspekte für Sie übernimmt.

Fähigkeit Standard-Hub Chat-Hub
Echtzeit-Messaging ✔️ ✔️
Rooms Kundenspezifisch Integriert
Nachrichtenpersistenz Kundenspezifisch Integriert
Mitgliederverwaltung Kundenspezifisch Integriert
Chat-spezifische APIs ✔️
Client-SDK-Ergonomie Niedrige Ebene Auf Chats ausgerichtet

Mit dem Chat-Hub arbeitet man mit Räumen, Nachrichten und Mitgliedern, statt mit Veranstaltungen und Verbindungen.

Wählen Sie die richtige Abstraktionsebene

Verwenden Sie den Standardhub, wenn Sie Folgendes benötigen:

  • Volle Kontrolle über das Protokolldesign
  • Echtzeit-Workloads ohne Chat (Telemetrie, Signalisierung, Live-Dashboards)
  • Hochgradig individuelle Event-Modelle

Nutzen Sie den Chathub, wenn Sie möchten:

  • Baue schnell Chat-Erfahrungen auf
  • Serviceorchestrierung und Standardcode reduzieren
  • Konzentrieren Sie sich auf das Nutzererlebnis statt auf die Infrastruktur
  • Skalieren Sie Chatworkloads mit nativen Azure-Diensten

Beide Optionen basieren auf demselben Web PubSub-Service, sodass Sie die Abstraktionsstufe wählen können, die am besten zu Ihrer Anwendung passt.

So funktioniert es

Ein Diagramm erklärt, wie Web PubSub Chat auf konzeptioneller Ebene funktioniert.

Anstatt rohe Events zu veröffentlichen oder Verbindungen direkt zu verwalten, interagiert Ihre Anwendung mit Chat-nativen Primitiven:

  • Rooms
  • Messages
  • Mitglieder
  • Benutzer

Das Chat-SDK und der Dienst übernehmen:

  • Echtzeit-Nachrichtenzustellung
  • Verteilung an verbundene Benutzer (auch wenn ein Benutzer über mehrere Geräte oder Browser-Tabs verbunden ist)
  • Zimmermitgliedschaft
  • Nachrichtenpersistenz und -abruf

Zentrale Konzepte

Rooms

Ein Raum steht für einen Chatraum. Es kann ein oder mehrere Mitglieder umfassen und pflegt eine eigene Nachrichtengeschichte.

Um Räume zu erstellen und Mitglieder zu verwalten, siehe Räume erstellen und verwalten.

Messages

Senden Sie Nachrichten an einen Raum und liefern Sie sie in Echtzeit an verbundene Mitglieder. Web PubSub Chat verwaltet die Reihenfolge der Nachrichten und die Nachrichtenpersistenz, sodass Ihre Anwendung das nicht tun muss. Mitglieder können vergangene Nachrichten als Geschichte laden, selbst nachdem sie sich wieder verbinden oder später dem Raum beitreten.

Um Nachrichten zu senden und den Verlauf zu lesen, siehe Nachrichten senden und lesen.

Benutzer

Ein Benutzer repräsentiert eine Anwendungsidentität, die Nachrichten senden und empfangen kann.

Mitglieder

Ein Mitglied repräsentiert einen Benutzer, der einem Raum hinzugefügt wurde. Die Mitgliedschaft regelt, welche Nutzer Nachrichten innerhalb dieses Raums empfangen und senden können.

Reliability

Web PubSub Chat läuft über die zuverlässige WebSocket-Verbindung von Web PubSub. Wenn die Verbindung abbricht, verbindet sich der Client erneut und stellt die Verbindung automatisch wieder her, ohne Nachrichten zu verlieren.

Rollen und Berechtigungen

Der Web-PubSub-Chat ermöglicht es Ihnen, über Rollen und Berechtigungen zu steuern, wer was tun darf. Eine Berechtigung ist eine einzelne Aktion, und eine Rolle ist eine benannte Menge von Berechtigungen.

Für die vollständigen Berechtigungslisten, die eingebauten Rollen und wie man sie zuweist oder anpasst, siehe Rollen und Berechtigungen konfigurieren.

Nächste Schritte