Zum Inhalt springen

Anwendungsfall

Kollaborative Oberflächen

Zwei Menschen, die dasselbe bearbeiten, brauchen fortlaufend drei Antworten: wer sonst ist hier, was hat die Person gerade getan, wo ist ihr Cursor. presence, events und client events beantworten sie der Reihe nach.

presence-doc-9f2
  • Presence-Channels
  • Client-Events
  • Events
  • Private-Encrypted-Channels

Wie es funktioniert

  1. 01Dem Dokument beitretenEin presence-channel pro Dokument, beim Abonnieren von Ihrem Server autorisiert.
  2. 02Zeigen, wer da istDie Mitgliederliste kommt mit dem Abonnement; events halten die Avatare ehrlich.
  3. 03Absicht sendenCursor und Auswahlen sind client events — hochfrequent und wegwerfbar.
  4. 04Änderungen festschreibenDauerhafte Änderungen gehen über Ihren Server und werden dann veröffentlicht — damit alle auf den gespeicherten Zustand konvergieren.

Gut zu wissen

client events sind ratenbegrenzt und werden nicht gespeichert — sie taugen für Cursor, nicht für Änderungen. Alles, was ein Neuladen überdauern muss, geht über Ihren Server.

Im Code

doc.js
js
const doc = pusher.subscribe('presence-doc-9f2')// Ephemeral: straight between editors, never persisted.canvas.onpointermove = throttle((e) => {  doc.trigger('client-cursor', { x: e.clientX, y: e.clientY })}, 50)// Durable: your server persisted it, then published it.doc.bind('block-updated', (block) => applyBlock(block))

Geschrieben mit den offiziellen Pusher-Bibliotheken, unverändert — es gibt kein PushCaster-Paket zu installieren. Vollständige Dokumentation

Was Leute sonst noch bauen

Alle Anwendungsfälle
presence-room-42

Realtime-Chat

Räume, Mitgliedschaft und Tippanzeigen auf presence-channels.

private-user-1e9

Benachrichtigungen

Ein Server-event, zugestellt an jede Oberfläche, die jemand offen hat.

private-metrics

Live-Dashboards

Kennzahlen schicken, sobald sie sich ändern, statt per Polling danach zu fragen.

Legen Sie eine Anwendung an und bauen Sie es.

Support