Pular para o conteúdo

Caso de uso

Interfaces colaborativas

Duas pessoas editando a mesma coisa precisam de três respostas o tempo todo: quem mais está aqui, o que a pessoa acabou de fazer, onde está o cursor dela. presence, events e client events respondem uma de cada vez.

presence-doc-9f2
  • channels presence
  • client events
  • events
  • channels private-encrypted

Como funciona

  1. 01Entrar no documentoUm channel presence por documento, autorizado pelo seu servidor na hora da inscrição.
  2. 02Mostrar quem estáA lista de membros chega junto com a inscrição; os events mantêm os avatares honestos.
  3. 03Transmitir a intençãoCursores e seleções são client events — de alta frequência e descartáveis.
  4. 04Confirmar as mudançasEdições duráveis passam pelo seu servidor e depois são publicadas — para todo mundo convergir no estado guardado.

Vale saber

client events têm limite de frequência e não são persistidos — servem para cursores, não para edições. Tudo que precisa sobreviver a um refresh passa pelo seu servidor.

Em código

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))

Escrito com as bibliotecas oficiais do Pusher, sem modificação — não há pacote do PushCaster para instalar. Documentação completa

Outras coisas que as pessoas constroem

Todos os casos de uso
presence-room-42

Chat em realtime

Salas, participação e indicadores de digitação em channels presence.

private-user-1e9

Notificações

Um event de servidor, entregue a cada superfície que a pessoa deixou aberta.

private-metrics

Painéis ao vivo

Envie métricas conforme elas mudam em vez de ficar buscando com polling.

Crie uma aplicação e construa.

Support